Preciso substituir algum texto dentro de um arquivo de texto por um substituto. Normalmente eu faria algo como
sed -i 's/text/replacement/g' path/to/the/file
O problema é que ambos texte replacementsão cadeias complexas que contêm traços, barras, barras negras, aspas e assim por diante. Se eu escapar de todos os caracteres necessários, texta coisa se torna rapidamente ilegível. Por outro lado, não preciso do poder das expressões regulares: só preciso substituir o texto literalmente.
Existe uma maneira de fazer a substituição de texto sem usar expressões regulares com algum comando bash?
Seria bastante trivial escrever um script que faça isso, mas acho que já deveria existir algo.
bashsempre são enviados com o Microsoft Word? ;) Não, é brincadeira. O OP pode querer fazer isso em uma máquina remota ou para um lote de arquivos.
sed, o que provavelmente é um esforço fútil, considerando todas as opções e diferenças de plataforma.
find and replace all