【发布时间】:2016-09-06 17:37:33
【问题描述】:
我有一个 sed 命令,它可以定制 httpd.conf 文件并在命令行中完美运行:
sudo sed -i 's/DocumentRoot \"\/var\/www\/html\"/DocumentRoot \"\/var\/www\/html\/web\"/' /etc/httpd/conf/httpd.conf
但是,当作为 config.vm.provision 的一部分包含在 Vagrant 初始化脚本中时,它会失败,如下所示:
default: sed:
==> default: couldn't open file ww/html"/DocumentRoot "/var/www/html/web"/: No such file or directory
==> default: sed: -e expression #1, char 44: expected newer version of sed
==> default: sed: -e expression #1, char 43: unknown option to `s'
我尝试过玩转义,但我尝试的没有任何效果。我哪里错了?
【问题讨论】:
-
看来您的第一个
/w被处理为对ww\/html\"/DocumentRoot \"\/var\/www\/html\/web\"/文件的写入命令。这可以解释第一条错误消息。
标签: bash sed centos vagrant vagrantfile