Я хотел бы получить файл .gz из каталога на основе исходного имени файла. Пожалуйста, дайте мне знать, как это сделать.

В приведенном ниже примере я знаю только оригинальное имя файла (02.txt), и мне нужно извлечь файл abc02.gz из этого каталога.

GZ File Name Original File Name  
abc01.gz     01.txt  
abc02.gz     02.txt  
abc03.gz     03.txt   

1 ответ1

1

Я предполагаю, что вы имеете в виду файлы .tar.gz и .tgz, а не файлы .gz, поскольку файлы .gz обычно представляют собой отдельные файлы с одинаковым именем файла, но с добавлением .gz.

Вот один из способов поиска всех файлов .tgz и .tar.gz, которые содержат файлы с именем «02.txt»:

for f in *.tgz *.tar.gz; do tar ztf "$f" | grep -q '/02.txt$' && echo "$f"; done

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .