gpt4 book ai didi

bash - sed将字符串替换为单引号

转载 作者:行者123 更新时间:2023-12-02 14:09:26 25 4
gpt4 key购买 nike

我想使用bash脚本修改远程主机上存在的脚本。

我的bash脚本具有如下命令,可在远程主机上运行sed命令:

ssh user@domain.com "some_command"

我要用sed命令修改一个名为config.php的文件。

我想替换这样的字符串
'debug' => true

有了这个
'debug' => false

sed命令(不起作用)是这样的:
sed 's/'debug'->true/'debug'=>false/g' config.php > newconfig.php

正确使用sed命令是什么,如何使它正确转义ssh“”命令中的所有字符?

最佳答案

尝试这样做:

$ sed -r "s@('debug'\s*=>\s*).*@\1false@" file
'debug' => false

因此:
ssh user@host<<'EOF'
sed -i -r "s@('debug'\s*=>\s*).*@\1false@" /PATH/TO/config.php
EOF

关于bash - sed将字符串替换为单引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27391297/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com