我有一个用户定义的环境变量指向的文件,$file
定义为:
file='filename.groovy'
当我做:
echo $file
它可以正确打印,没有任何问题:
filename.groovy
当我这样做时:
cat $file
它成功打印了文件'filename.groovy'的内容
到这里为止一切都很完美
但是,问题是:
当我尝试将sed
命令的输出重定向为:
sed 's/def version = ".*"/def version = "'$version'"/' $file > $file
接着
猫$文件
它什么也没打印,即我的原始文件被截断了。
为什么会这样?
sed
请提出使用变量 $file 将命令输出重定向到文件 'filename.groovy'的原因和解决方案
提前谢谢。. .