sed
从命令行工作,但如果把它放在一个sh
文件中并执行它就不起作用。我想更改现有文件中的数字并将其定向到新文件,因此我尝试了以下操作:
echo enter number
read num
var1='more ods2.sql | egrep -e "test" | cut -c 5-7'
sed "s/test$var1/test$num/g" ods2.sql > odstest.sql
Run Code Online (Sandbox Code Playgroud)
如果我在提示中执行这些语句,它们会以所需的结果执行。我用$var1
我传递的字符串替换了,例如12345
:
sed "s/test$var1/test$num/g" ods2.sql > odstest.sql
Run Code Online (Sandbox Code Playgroud)
这也可以从提示中正常工作:
more ods2.sql | egrep -e "test" | cut -c 5-7'
Run Code Online (Sandbox Code Playgroud)
如果我把它放在一个 shell 脚本中,为什么它不起作用?
sed ×1