(shell脚本linux)用户输入递归遍历

时间:2014-02-11 06:25:35

标签: linux shell recursion

我在linux系统上使用ksh。我想询问用户是否要遍历此目录。如果是,则列出文件并对子目录执行类似的检查。

1 个答案:

答案 0 :(得分:0)

您可以使用“查找”,并使用“-ok”选项:

find . -type d -ok echo {} \;

这将在当前目录(即“。”)及其下方搜索“d”类型的所有内容(即目录),并询问您是否要回显目录的名称。 “\;”只是终止命令。

当然,你想做一些与“回声”不同的事情,比如你的实际处理,但你应该明白这一点。

这是一个例子。当我对“ImageMagick”和“nytprof”目录说“是”时,您可以看到目录名称被回显,但在其他目录中没有任何反应:

find . -type d -ok echo {} \;
"echo ."? n 
"echo ./dir"? n
"echo ./ImageMagick"? y
./ImageMagick
"echo ./nytprof"? y
./nytprof