Заархивируйте все файлы, возвращенные командой «grep-ril».

я используюgrep -rilчтобы иметь возможность видеть все файлы, содержащие определенную строку:

      [user@machine]$ grep -ril "test string"
file1.log
file2.log
file3.log
file4.log
...

Затем я хотел бы заархивировать все файлы, возвращенные этой командой. Это возможно?

Я пробовал такие вещи, какgrep -ril myPattern | zip files.zipиgrep -ril myPattern | zip > files.zipно пока ничего не помогло.

Есть ли обходной путь?

Спасибо.

1 ответ

Используйте переключатель командной строки zip-@иметьzipвозьмите список входных файлов из стандартного ввода, а не из командной строки. Например,

      grep -ril "test string" | zip name-of-new-zip-file -@ 
Другие вопросы по тегам