为什么sed不能在我的bash脚本中工作?

为什么sed不能在我的bash脚本中工作?,第1张

概述这是我的代码.我只是想复制一些文件并替换我的Makefile中的一行.参数$1只是我的新.tex文件的名称. #!/bin/bash pwd="./" tex=".tex" pwd=$1$tex 这是我的代码.我只是想复制一些文件并替换我的Makefile中的一行.参数$1只是我的新.tex文件的名称.

#!/bin/bash                                pwd="./"                                   tex=".tex"                                 pwd=$tex                                 cp ~/TeX/matt.sty .                        cp ~/TeX/mon.tex $pwd                      cp ~/TeX/Makefile .                        sed="sed 's/mon.tex/"$tex"/g' Makefile > Makefile"           $sed

我有以下错误:sed:1:“’s / mon.tex / salut.tex / g’”:无效的命令代码’

ps:我在Mac OS X上使用sed.(所以它是bsd sed)

解决方法 sed的第一个参数字面上是’s / mon.tex /“$1 $tex”/ g'(带单引号).显然sed无法将其解析为命令.

删除单引号可以解决该问题,但重定向(>)仍然无法正常工作.

只是直接运行sed命令($sed变量的重点是什么?我没有得到它)

注意:要使用sed修改文件,请使用sed -i.重定向到您正在处理的同一文件将无法正常工作.

总结

以上是内存溢出为你收集整理的为什么sed不能在我的bash脚本中工作?全部内容,希望文章能够帮你解决为什么sed不能在我的bash脚本中工作?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1025939.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存