我想编写一个shell脚本,它遍历目录下的所有目录,并在每次迭代时调用一个目录名作为参数的java程序.
所以我的父目录是作为shell脚本的参数提供的:例如:
. myShell.sh /myFolder/myDirectory
Run Code Online (Sandbox Code Playgroud)
下面有100个目录/myFolder/myDirectory.对于每个"directory_i",我想运行:
java myProg directory_i
Run Code Online (Sandbox Code Playgroud)
如果有人能为我提供一个完美的工作shell脚本!
你可以用find.
myShell.sh脚本可能看起来有点像这样,这是一个递归处理目标下任何和所有子目录的版本.
DIR="$1"
find "$DIR" -type d -exec java myProg {} \;
Run Code Online (Sandbox Code Playgroud)
find可用的确切选项取决于您的各种unix.如果你不想要递归,你可能会-maxdepth像Neeraj所说的那样使用,或者也许-prune,它开始变得有点难看:
find "$DIR" \( ! -name . -prune \) -type d -exec java myProg {} \;
Run Code Online (Sandbox Code Playgroud)
编辑:添加修剪示例.
| 归档时间: |
|
| 查看次数: |
5443 次 |
| 最近记录: |