Sed * только модифицирует первый файл - PullRequest
0 голосов
/ 19 февраля 2019

Я хотел бы удалить первые 40 строк из большого числа файлов ASCII и сохранить файлы ASCII без этих 40 строк

Я работаю под OSX High Sierra, понял, что опция -iв sed не работал, пока я не создал файл резервной копии, поэтому я попытался с помощью этой команды:

sed -i'backup' -e '1,40d' *.txt

Однако он только изменяет и удаляет первые 40 строк в моем первом файле (в алфавитном порядке), но недругие.

Как мне отредактировать несколько файлов одной командой?

Спасибо

1 Ответ

0 голосов
/ 19 февраля 2019

Вы можете использовать следующую команду, которая будет

  • искать в текущей папке
  • игнорировать подпапку
  • принимать во внимание только те файлы, имена файлов которых заканчиваются на '* .txt '
  • перед выполнением команды sed.

Команда:

   find . -maxdepth 1 -type f -name '*.txt' -exec sed -i 'backup' -e '1,40d' {} \;
...