PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : bash: n leerzeichen durch "_" ersetzen



meinereinerseiner
16-10-2009, 08:08
Hi,

wie kann ich eine unbekannte anzahl von aufeinanderfolgenden leerzeichen durch ein einzelnes "_" ersetzen?

habs mal mit tr versucht, klappt aber irgendwie nicht:

echo "bla bla" | tr -ds ' ' '_'
blabla



thx,
tom

meinereinerseiner
16-10-2009, 08:34
gelöst:


echo "bla bla" | tr -s ' ' '_'
bla_bla



tom

Stefan_K
16-10-2009, 15:01
Hallo Tom,

mit dem sed geht sowas auch ganz gut:

echo "noch mehr text" | sed -e 's/ */_/g'
noch_mehr_text


Stefan