Цикличное выполнение через каталоги с помощью команды csh

Я пытаюсь получить список папок в моем каталоге 'KEAX' и затем погрузиться в каждого из них.

После ввода каждой папки я хочу выполнить команду:

foreach f(*.tar)
tar -xvf$f
end

После выполнения этой команды я хочу отступить, и затем войти в следующую папку, которая находится в 'KEAX' и выполняет ту же команду как выше. Однако я получаю ошибку при выполнении вышеупомянутой команды

2
задан 27 September 2016 в 19:33

1 ответ

Эта команда должна работать. Это ищет весь *.tar файлы в текущем каталоге рекурсивно и cd, с в ее местоположение в Bash подокружают, и распаковывает его там для каждого результата:

find . -iname '*.tar' -exec bash -c 'cd "$(dirname "{}")" ; tar -xvf "$(basename "{}")"' \;
1
ответ дан 2 December 2019 в 04:53

Другие вопросы по тегам:

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