GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie kann man eine Liste von Wörtern in einer Shell-Zeichenfolge umkehren?

Wenn Sie eine reine Shell ohne externe Tools benötigen, sollten Sie Folgendes in Betracht ziehen:

reverse_word_order() {
    local result=
    for word in [email protected]; do
        result="$word $result"
    done
    echo "$result" 
}

reverse_word_order "$str"

Sonst tac kann Ihnen sofort helfen:

echo -n "$str" | tac -s' '

oder

tac -s' ' <<<"$str" | xargs 

Ja, Sie können diese Befehle ausprobieren,

Für Zeichenfolge ,

echo "aaaa eeee bbbb ffff cccc"|tr ' ' '\n'|tac|tr '\n' ' '

Für die Variable ,

echo $str|tr ' ' '\n'|tac|tr '\n' ' '

Sie können awk verwenden wie folgt:

echo "$str" | awk '{ for (i=NF; i>1; i--) printf("%s ",$i); print $1; }'

Linux
  1. So richten Sie einen Nginx-Reverse-Proxy ein

  2. So drucken Sie Stdout eines Befehls in umgekehrter Reihenfolge auf einer Linux-Shell

  3. Jedem Element von $* in der Shell eine Zeichenfolge voranstellen und anhängen?

  4. So ändern Sie die Shell unter Linux

  5. Wie listet man bestimmte Dateitypen in rekursiven Verzeichnissen in der Shell auf?

So listen Sie alle Datenbanken in PostgreSQL auf

So verwenden Sie den Linux-SS-Befehl

Wie Echo in Datei

Wie konvertiere ich Hex in ASCII-Zeichen in der Linux-Shell?

Wie konvertiere ich die Shell-Ausgabe von Linux in HTML?

Wie entferne ich eine Zeichenfolge aus einer Datei über Shell-Skripte?