entfernen Leerzeichen aus der Bash-Variablen

7

Angenommen, eine Variable enthält Leerzeichen, Zeilenumbrüche und Tabulatoren, gefolgt von einem Text, warum:

%Vor%

Entfernen Sie den Leerraum und lassen Sie den Text, aber dies:

%Vor%

nicht?

    
MCS 27.11.2008, 16:27
quelle

4 Antworten

26

Wenn ich var=" This is a test " einstelle, funktionieren beide Vorschläge nicht. nur das führende Zeug wird entfernt. Warum nicht die Ersetzungsfunktion verwenden, die alle Vorkommen von Leerzeichen löscht und nicht nur die erste:

%Vor%     
flolo 27.11.2008, 16:51
quelle
4

[: space:] ist eine Zeichenklasse. Es ist nur gültig, wenn es in einer anderen Gruppe von []. Verschachtelt ist.

    
Barry Kelly 27.11.2008 16:49
quelle
1

Die Antwort von flolo ist im Abschnitt "Parameter Substitution" der bash man-Seite dokumentiert. Eine weitere Dokumentationsquelle ist der Parameter Substitution Abschnitt des Advanced Bash-Scripting Guide . Das ABS-Handbuch enthält eine grundlegende Dokumentation mit hervorragendem Beispielcode.

    
converter42 02.12.2008 16:38
quelle
0

Was ist mit $ (echo $ var)

? %Vor%     
Bryant Hansen 06.02.2013 10:04
quelle

Tags und Links