2014-11-24 1 views
0
  • Я использую терминал в Os X 10.9;
  • Я хочу удалить те же строки из нескольких файлов в одном каталоге;
  • Файл в каталоге имеет имя 1.txt 2.txt 3.txt и т. Д. (170 файлов);
  • Цель состоит в том, чтобы удалить все строки, за исключением от 156 до 698 в каждом файле;
  • Команда выглядит следующим образом:

находку. -type f -name "* .txt" | xargs sed -i '156,698! d'Os X 10.9 с помощью sed для удаления нескольких строк в нескольких файлах

Не работает, кроме первого файла? Каков наилучший способ сделать это?

Благодаря

ответ

1

Вы можете использовать опцию -I с xargs и сделать что-то вроде этого:

find . -type f -name "*.txt" | xargs -I {} sed -i '156,698!d' {}