我正在构建一个Vagrant项目,它将提供一个具有自定义地图的Minecraft服务器(我使用这个词吗?)在提供过程中,我一直收到sed错误sed: -e expression #1, char 39: unknown option to 's'
,但如果我手动执行sed命令,则没有相同的错误。我的代码有什么问题?
Vagrantfile:
$map_install = <<INLINE_SCRIPT
cd /home/vagrant
cp /vagrant/min.config /home/vagrant/server.properties
sed -i 's/resource-pack=/resource-pack=https:\/\/example.com\/resources.zip/g' server.properties
INLINE_SCRIPT
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.provision "shell", inline: $map_install, privileged: false
end
server.properties:
#Minecraft server properties
resource-pack=
答案 0 :(得分:0)
经过一些更多的研究,我发现FileSessionHandler.php
协议标题以某种方式干扰了原始的sed脚本,即使我逃脱了正斜杠。所以我将sed分隔符从正斜杠更改为解决问题的美元符号。现在sed命令变为:
https://