У меня есть каталог с более чем 1000 файлами, и некоторые из них являются файлами .zip, и я хочу превратить их все в файлы .tgz.
Я хочу использовать grep для составления списка имен файлов. Я пробовал "grep * .zip" безрезультатно. Читая справочные страницы, я подумал, что это универсальный селектор. Почему это не работает?
Спасибо.
Необходимо действительно использовать find
вместо этого.
find <dir> -iname \*.zip
Пример: для поиска всего .zip
, файлы в текущем каталоге и всех подкаталогах пробуют это:
find . -iname \*.zip
Это перечислит все файлы, заканчивающиеся .zip
относительно случая. Если Вы только хотите тех со строчным изменением -iname
к -name
, команда grep
ищет жала в файлах, не для файлов. Можно использовать его с find
для списка весь Вашего .zip
файлы как это
find . |grep -e "\.zip$"
Grep использует регулярные выражения по умолчанию. Выражение, которое Вы хотели бы:
grep .zip$
Вы, вероятно, хотите использовать find
все же.
находят. - называют '*.zip'
, Или можно передать по каналу, находят в grep
find . | grep .zip$