当前位置: 代码迷 >> 综合 >> shell错误 sed: can't read : No such file or directory
  详细解决方案

shell错误 sed: can't read : No such file or directory

热度:46   发布时间:2024-01-24 22:54:04.0

出现这样的问题主要是在于 空字符 造成的,情况分为3种

第一种是windows上的文件,在Linux上运行,这种可以通过查看文件编码确认,unix + utf-8 可以解决。

第二种是网页复制的shell代码,里边有些未知编码的空格字符,这种情况多次全局替换,可以解决,实在不行照着代码敲一遍总可以解决。

第三种是 sed命令使用了换行符 \ 且在换行符后加入了空格,例如:

value1=test1
value2=test2sed -i -r \-e "s/(key1[ =]*).*/\1${value1}/g" \-e "s/(key2[ =]*).*/\1${value2}/g" \    /root/test.conf

这是一个修改配置文件的脚本,但是在倒数第二行的\后边有空格,续行符后的空格在这里被解释为了文件路径,所以找不到文件。

 

 

  相关解决方案