Я написал новое регулярное выражение , которое соответствует всему [[...]]
и заменяет его только тем, что вы хотите сохранить. Предполагается, что имена файлов не содержат символов вертикальной черты |
или терминатора ]]
. Я не могу воспроизвести вашу проблему с xargs
, но я все равно заменил ее опцией find
-exec
; следующее работает для меня в Linux.
find. -name "*.txt" -exec perl -i -pe 's/(\[\[File:[^|]*).*?(\]\])/$1$2/g' '{}' +
Вы можете заменить nullok_secure
на nullok
в /etc/pam.d/common-auth
. Вам также может понадобиться настроить значения в /etc/pam.d/sshd
, если у вас есть какие-то специфические переопределения. У вас должно быть что-то подобное в вашем общем -файле авторизации:
auth [success=1 default=ignore] pam_unix.so nullok