shell中单双引号的区别


下面一段代码实现某个文件中,变量2替换变量1。命令行下都能执行,但是在shell中却有区别的。第一句不会报错,也能正确接受参数,但只有第二句能正确执行。

   
  #!/bin/sh
  
sed -i 's#$1#$2#g' $3
sed -i "s#$1#$2#g" $3

shell

寂寞的金克拉 13 years, 1 month ago

shell中单引号与双引号的区别在于:

单引号括起来的字符串里的变量不会被替换,会原样输出。
双引号括起来的字符串里的变量会替换成变量相对应的值。

死死掉算了 answered 13 years, 1 month ago

Your Answer