0
我正在尝试编写一个shell脚本来在Ubuntu 14.04上找到替换这行代码的代码。SED用单引号和双引号替换内容
//Code before script runs
/*define('FS_METHOD','direct');*/
//Code after script runs
define('FS_METHOD','direct');
sudo sed -i "[email protected]/*define('FS_METHOD','direct');*/@define('FS_METHOD,'direct');@g" /home/example/example.txt
运行此行代码后,我没有得到任何错误,但它不会删除/ * * /我相信这是因为单引号的。我试图用反斜杠转义它们,但它也不起作用。任何人有任何想法如何让这个工作?
我尝试这两种方法并没有为我工作。我在OSX和Ubuntu的终端上运行了两条线,都没有工作。我不能想到我会做错什么。 – Drew
也许你需要双重逃避一切,因为你在sudo下运行? idk ...当你不在sudo下运行时,它的行为是否符合要求?如果不包含'-i'选项(消除文件权限问题),它是否会产生预期的输出? –
试图使用sudo,而不是使用它,它给出了相同的结果。尽管如果删除单引号,它确实有效。 – Drew