find . -iname "*.txt" -exec program '{}' \; | sed 's/Value= //'
- "程序"为每个文件返回不同的值,输出前缀为"Value= "
此时输出为"Value= 128"
,之后仅为128
。
如何仅使用值"128"
并将输入文件重命名为128
。txt
但也有这个发现运行思想多个文件。
答案 0 :(得分:0)
首先编写一个能够重命名参数的shell脚本:
mv "$1" "$(program "$1" | sed "s/Value= //").txt"
然后将该脚本嵌入到find命令中:
find . -iname "*.txt" \
-exec sh -c 'mv "$1" "$(program "$1" | sed "s/Value= //").txt"' _ {} \;