使用 csh 命令循环遍历目录

使用 csh 命令循环遍历目录

我正在尝试获取目录“KEAX”中的文件夹列表,然后深入研究其中的每一个文件夹。

进入每个文件夹后,我想运行命令:

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

运行此命令后,我想退出,然后进入“KEAX”中的下一个文件夹并运行与上述相同的命令。但是,我在运行上述命令时收到错误

答案1

此命令应该可以工作。它以递归方式搜索*.tar当前目录中的所有文件,然后cd进入 Bash 子 shell 中的位置,并针对每个结果在那里解压:

find . -iname '*.tar' -exec bash -c 'cd "$(dirname "{}")" ; tar -xvf "$(basename "{}")"' \;

相关内容