Zu Formatierungszwecken möchte ich alle Zeichen eines Strings durch Leerzeichen ersetzen.Wie konvertiert man einen String in alle Leerzeichen in Bash?
STR="some string of unknown length"
SPC=" " <--- this is what I want
Mit Hilfe von this page, das Beste, was ich mit ist dies einfiel:
SPC=${STR//[a-Z]/ }
Aber das ersetzt nur Buchstaben
, nicht Ziffern oder Sonderzeichen. Was ist der Platzhalter für "jedes Zeichen" mit dieser Art von Bash String Ersetzungen?
Ich bin nicht ganz sicher, warum diese _for Formatierung Zwecke tun wollen, _ da für die meisten Formatierungszwecke können Sie 'printf' verwenden. Zum Beispiel "str =" eine Zeichenfolge unbekannter Länge "; printf '% * s |% s \ n% s |% s \ n' "$ {# str}" "" "hallo" "$ str" "Auf Wiedersehen" '. –
Guter Punkt. Das war mir einfach nicht bewusst ... zu fest auf echo anstatt auf printf. Danke für den Tipp. – dokaspar