У меня есть папка cnt
, где внутри у меня есть
a/estimate.txt
a/otherFolder/....
b/estimate.txt
b/otherFolder/...
...
z/estimate.txt
z/otherFolder/..
Я хочу иметь почтовый индекс, содержащий
a/estimate.txt
b/estimate.txt
...
z/estimate.txt
В настоящее время я использую zip -r cnt.zip cnt
, который много вещи включают otherFolder
, что я не хочу.
Как добиться того, что я упоминаю в вопросе?
Похоже, что Вам только нужно эти estimate.txt
файлы в 1-х подпапках уровня cnt
.
можно использовать подстановочные знаки, чтобы сделать это; просто выполненный zip -r cnt.zip cnt/*/estimate.txt
.
Вот пример:
$ ls -R cnt
cnt:
a b c d e f g h i j k l m n o p q r s t u v w x y z
cnt/a:
estimate.txt otherfolder
cnt/a/otherfolder:
file1 file2
cnt/b:
estimate.txt otherfolder
cnt/b/otherfolder:
file1 file2
...
cnt/y/otherfolder:
file1 file2
cnt/z:
estimate.txt otherfolder
cnt/z/otherfolder:
file1 file2
$ zip -r cnt.zip cnt/*/estimate.txt
adding: cnt/a/estimate.txt (stored 0%)
adding: cnt/b/estimate.txt (stored 0%)
...
adding: cnt/y/estimate.txt (stored 0%)
adding: cnt/z/estimate.txt (stored 0%)
Попробуйте это:
find /full/path/to/cnt/ -type f -name "estimate.txt" -exec zip -r cnt.zip {} +