Respostas:
"Excluir todos os espaços em branco" pode significar uma das seguintes coisas:
0x20.\t"\n" e outrosSe sednão for um requisito por algum motivo oculto, use melhor a ferramenta certa para o trabalho.
O comando trtem o uso principal na tradução (daí o nome "tr") de uma lista de caracteres para uma lista de outros caracteres. Como uma caixa de canto, pode ser traduzida para a lista vazia de caracteres; A opção -d( --delete) excluirá os caracteres que aparecem na lista.
A lista de caracteres pode fazer uso de classes de caracteres na [:...:]sintaxe.
tr -d ' ' < input.txt > no-spaces.txttr -d '[:blank:]' < input.txt > no-spaces.txttr -d '[:space:]' < input.txt > no-spaces.txtsedCom sed, a [:...:]sintaxe para classes de caracteres precisa ser combinada com a sintaxe para conjuntos de caracteres em regexps [...], resultando em algo confuso [[:...:]]:
sed 's/ //g' input.txt > no-spaces.txtsed 's/[[:blank:]]//g' input.txt > no-spaces.txtsed 's/[[:space:]]//g' input.txt > no-spaces.txttr -d ' ' < input.txt > no-spaces.txt.
tragora. (Você vê-la em outro lugar?)
Você pode usar isso para remover todos os espaços em branco em file:
sed -i "s/ //g" file
man sed | sed "s/ //g"
/com um personagem diferente, por exemplo:sed "ss ssg"