sed новичок: изменение всех вхождений в папке

Я предпочитаю использовать shellscript find | xargs cmd вместо find -exec, потому что его shell-scripting легче запомнить.

В этом примере shell-scripting глобально заменяется «foo» на regularexpression «bar» в файлах .txt в текущем regex каталоге или ниже него:

find . -type f -name "*.txt" -print0 | xargs -0 sed -i "s/foo/bar/g"

Параметры shell-script -print0 и -0 можно не указывать, если shell имена файлов не содержат shell-scripting необычных символов, таких regex как пробелы.

regex

linux

shell

sed

2022-11-20T09:56:13+00:00