Не столь бесполезная команда "да" bash: как подтвердить команду в каждом цикле
Я написал цикл для распаковки всех zip файлов в каталоге.
for f in *zip
do
unzip $f
done
Однако, я должен подтвердить перезапись на каждом шаге:
replace file123.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
Как я могу переписать цикл для отправки в каждом цикле одной и той же команды?
Ответы
Ответ 1
Замечательно, может быть, один из немногих случаев, когда да по-прежнему полезен
Попробуйте:
for f in *zip
do
yes | unzip $f
done
Будет выполняться печать "y" при каждой команде.
Или, альтернативно, вы можете указать строку, предоставленную да, например:
for f in *zip
do
yes A | unzip $f
done
Ответ 2
unzip -o $f
за документы
Ответ 3
Попробуйте использовать
unzip -o
в вашем цикле
Ответ 4
for f in *zip
do
echo "yes" | unzip $f
done