我写了一个重命名文件的bash shell脚本,
#!/bin/bash
#renaming the files
for filename in 'find . -name "PostStackTemplate*"'
do
echo $filename
newName='echo $filename | sed -e "s/TestVersion/Version2/g" $filename'
mv $filename $newName
done
当我执行此脚本时,我将输出作为
find . -name "PostStackTemplate*"
mv: invalid option -- n
Try `mv --help' for more information.
我做错了什么。
答案 0 :(得分:2)
我认为您使用command substitution将sed
命令的输出分配给newName
变量:
newName=$(echo $filename | sed -e "s/TestVersion/Version2/g" $filename)
否则,newName
将仅包含所分配的字符串。