Hallo, ich muss über Zeichen in string in bash einschließlich Leerzeichen gehen. Wie kann ich es tun?strings in bash
Antwort
Nicht sicher, was Sie wirklich meinen, aber in fast allen Fällen können Probleme mit Strings einschließlich Leerzeichen durch Anführen gelöst werden. Wenn Sie a nice day
haben, versuchen Sie "a nice day"
oder 'a nice day'
.
Sie verwenden ein externes Tool dafür. Die Bash-Shell soll wirklich dazu dienen, andere Programme in meist einfachen Kombinationen zusammen zu kleben.
Je nachdem, was Sie benötigen, können Sie cut, awk, sed oder sogar perl verwenden.
Versuchen Sie, diese
#/bin/bash
str="so long and thanks for all the fish"
while [ -n "$str" ]
do
printf "%c\n" "$str"
str=${str#?}
done
Bash tut Unterstützung Teil direkt (Wenn das ist, was der OP will):
$ A='Hello World!'
$ echo "${A:3:5}"
lo Wo
$ echo "${A:5:3}"
Wo
$ echo "${A:7:3}"
orl
Die Erweiterung verwendet wird verallgemeinert:
${PARAMETER:OFFSET:LENGTH}
Parameter ist Ihr Variablenname. OFFSET und LENGTH sind numerische Ausdrücke, die von "let" verwendet werden. Weitere Informationen finden Sie auf der Bash-Info-Seite zur Shell-Parameter-Erweiterung, da es einige wichtige Details dazu gibt.
Daher, wenn Sie z.B. Drucken Sie alle Zeichen in den Inhalt einer Variablen jeder auf seine eigene Linie könnten Sie so etwas tun:
$ for ((i=0; i<${#A}; i++)); do echo ${A:i:1}; done
Der Vorteil dieser Methode ist, dass Sie müssen nicht an anderer Stelle die Zeichenfolge speichern, mangle seinen Inhalt oder verwenden Sie externe Dienstprogramme mit Prozesssubstitution.
- 1. bash script 'here strings'
- 2. Bash: Manipulieren mit Strings (Prozentzeichen)
- 3. Bash: Teil eines Strings extrahieren
- 4. BASH-Dateitestoperatoren mit leeren Strings
- 5. Bash Sortier Komma und Strings
- 6. Vergleichen Sie mehrzeilige Strings in bash Variablen
- 7. Manipulieren Strings (Dateierweiterungen) in bash mit Suche
- 8. bash case statements bewerten zu Strings
- 9. Bash - verschwindende Werte beim Verketten von Strings
- 10. Bash: Sortieren von Strings mit Zahlen
- 11. Bash: Teilstring innerhalb eines Strings neu positionieren
- 12. Wie Strings mit printf in bash formatiert verketten
- 13. Verketten von Strings, Dateien und Programmausgaben in Bash
- 14. Einfügen einzelner Strings mit einem Array in Bash
- 15. Wie entferne ich den ersten Teil eines Strings in bash?
- 16. Wie macht man eine zirkuläre Verschiebung von Strings in bash?
- 17. bash script zeigt $ strings in echo-statements nicht an
- 18. Bash Filtering Strings mit anderen als alphanumerischen Zeichen
- 19. Bash: Suchen/Ersetzen für Strings, die $ {FOO} -Stilmuster entsprechen.
- 20. Bash Replace String, der einfache Anführungszeichen mit anderen Strings enthält
- 21. Strings/Strings in tcsh passend
- 22. Concatenate Variable in String bash
- 23. bash rekursive Manipulation von Strings in einer Teilmenge von Dateien in allen Unterverzeichnissen
- 24. Convert JSON in bash Umgebungsvariablen
- 25. in bash
- 26. in bash
- 27. Bash erkennen farbige Textausgabe in Bash
- 28. Bash Programmierung einfügen Argumente in Bash-Aliase
- 29. sed/awk Großschreibung Strings
- 30. Reguläre Ausdrücke ungreedy in bash
Um eine nützliche Antwort zu erhalten, müssen Sie mehr Details und vielleicht ein Beispiel für die Ergebnisse liefern, die Sie erhalten möchten. –