过去两周我一直在使用groovy。我有一个脚本,我通常会这样运行:
groovy script input
其中input是输入文件的名称。但是,现在我想对大约100个文件的整个目录重复相同的内容 - 有没有办法在一个命令中运行它,而不是一个接一个地运行?
答案 0 :(得分:1)
当然,使用shell循环:
for file in *; do groovy script "$file" > file.out; done
这将迭代当前目录中的所有文件(和目录)。为了使其递归,意味着它也将在子目录中查找,请使用:
shopt -s globstar
for file in **/*; do groovy script "$file" > file.out; done
最后,为避免目录(如果有的话),请使用:
for file in *; do [ -f "$file" ] && groovy script "$file" > file.out; done