написание специального символа в sed bash - PullRequest
0 голосов
/ 02 июля 2018

У меня проблема, потому что я хочу заменить

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 Ответ

0 голосов
/ 02 июля 2018

Два варианта:

  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"
    
...