Сжатие на лету папки с возможностью чтения и записи (например, Windows EFS)?

Это гораздо больше подходит для цикла for, чем для цикла while. Таким образом, вы также можете избавиться от ненужного сохранения результатов из find -iname '*.zip' > zipindex

Вместо этого сделайте что-то вроде этого:

#!/bin/bash

for zip in $(find -iname '*.zip'); do
    unzip -o $zip
done

Это будет перебирать все строки, которые производит find.

Конечно, вы должны просто отказаться от bash-скрипта вообще и сделать такую строку find oneliner:

find -iname '*.zip' -execdir unzip {} ;

EDIT: Благодаря @don_crissti и @ilkkachu, мне удалось избавиться от вызова другого экземпляра оболочки в -exec. -execdir полезно знать!

1
07.06.2016, 20:40
0 ответов

Теги

Похожие вопросы