在执行一个shell脚本的时候, 经过检验,内部代码并没有错误,但运行时却提示 ‘\r’: command not found。

这个问题一般发生在Windows创建和编辑.sh脚本上传至Linux服务器运行的情况。问题发生的原因是 因为系统换行符的差异。只要转化脚本为unix格式即可解决问题。

2018年05月30日 教程整理
阅读更多...

sed替换的基本语法为:

sed 's/<原待替换字符串>/<替换目标字符串>/'

在上一段代码规则中:单引号内部,s表示替换,三根斜线中间是替换的样式,特殊字符需要使用反斜线 \ 进行转义。但是单引号 ' 是不能用反斜线 \ 转义的,这中签情况需要把命令中的单引号改为双引号,即: sed "s/<原待替换字符串>/<替换目标字符串>/"

命令中的斜线分隔符可以换成其他的符号,只需要紧跟s定义即可,例如换成问号 ? : sed 's?<原待替换字符串>?<替换目标字符串>?' ,效果是一样的。

基本语法默认只替换每行的第一个匹配的关键字。

更复杂的语法可以在此基础上加以调整:

2018年05月30日 教程整理
阅读更多...