Ich habe gelesen überhttps://stackoverflow.com/questions/39791042/vertikalen Text in horizontale Form in der Shell umwandeln
und frage mich, ob tr
es allein verwendet werden kann, um vertikalen Text in horizontalen umzuwandeln.
user@linux:~$ seq 3
1
2
3
user@linux:~$
Ich habe die folgende Lösung ausprobiert, sie funktioniert, ist aber nicht perfekt.
user@linux:~$ seq 3 | tr -d '\n'
123user@linux:~$
user@linux:~$
Wäre es möglich, es tr
allein zu verwenden, um eine solche Ausgabe zu erzielen?
Gewünschte Ausgabe
user@linux:~$ seq 3 | tr command here
123
user@linux:~$
Antwort1
Wählen Sie, was für Sie funktioniert.
$ seq 3 | paste -s -d ''
123
$ seq 3 | tr -d '\n';echo
123
$ seq 3 | awk 1 ORS='';echo
123
Antwort2
$ seq -s '' 3
123
Dies weist an seq
, die leere Zeichenfolge als Trennzeichen für die Zahlen zu verwenden (anstelle des standardmäßigen Zeilenumbruchzeichens).
Antwort3
Versuche dies,
seq 3 | paste -s -d ''
123
- -d, Trennzeichen als Null
- -s, seriell statt parallel drucken
Antwort4
Eine Lösung könnte sein
echo $(seq 3 | tr -d '\n')
Da Sie mit Switch alle Zeilenumbrüche entfernen, -d '\n'
müssen Sie den letzten mit einem Trick erneut hinzufügen.