linux - 在 sed bash 中写一个特殊字符

标签 linux bash sed command display

我有问题,因为我想更换

QueryConnection::DefaultChannel=

QueryConnection::DefaultChannel=/${CHANNEL NUMBER}

例如: QueryConnection::DefaultChannel=/5

我的代码:

sed -i "s/QueryConnection::DefaultChannel=.*/QueryConnection::DefaultChannel=${NUMER_KANALU}/" "${DIR_BOTS}/bot_${COUNT_BOTS}/configTS3AudioBot.cfg"

如何让${NUMER_KANALU}之前为"/"?

最佳答案

两种选择:

  1. 转义斜线:

    sed -i "s/QueryConnection::DefaultChannel=.*/QueryConnection::DefaultChannel=\/${NUMER_KANALU}/" "${DIR_BOTS}/bot_${COUNT_BOTS}/configTS3AudioBot.cfg"
    
  2. s 参数周围使用不同的分隔符:

    sed -i "s#QueryConnection::DefaultChannel=.*#QueryConnection::DefaultChannel=/${NUMER_KANALU}#" "${DIR_BOTS}/bot_${COUNT_BOTS}/configTS3AudioBot.cfg"
    

关于linux - 在 sed bash 中写一个特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51143146/

相关文章:

c - #error 您现在需要定义 FIXED_POINT 或 FLOATING_POINT

linux - 命令不会在 sudo 之后作为另一个用户回显

linux - 在 bash 脚本中安全记住 ssh 凭据

regex - 使用 sed 删除正则表达式模式之间的多行文本 block

regex - 如何使用sed替换字符串中间的匹配字符

linux - 如果第二列中的数据相同,则第一列的 Bash 添加

linux - 为什么 date 命令不能识别我的变量?

html - 将 Apache Mod Rewrite 规则转换为 NGINX

linux - 关于文本文件编码的困惑以及如何在不同的编码方法之间进行转换?

bash - 如何在 ant 中编写多个 exec 参数