Es gibt eine doppelte Frage mit einer einfacheren Antwort mit cut:
svn status | grep '\!' | cut -d\ -f2-
-d
gibt das Trennzeichen (Leerzeichen) an , -f
spezifiziert die Liste der Spalten (alle beginnend mit der 2.)
Alle Spalten drucken:
awk '{print $0}' somefile
Alles außer der ersten Spalte drucken:
awk '{$1=""; print $0}' somefile
Drucken Sie alle bis auf die ersten beiden Spalten:
awk '{$1=$2=""; print $0}' somefile
Sie könnten eine for-Schleife verwenden, um die Druckfelder $2 bis $NF (eingebaute Variable, die die Anzahl der Felder in der Zeile darstellt) zu durchlaufen.
Bearbeiten:Da "print" einen Zeilenumbruch anhängt, sollten Sie die Ergebnisse puffern:
awk '{out=""; for(i=2;i<=NF;i++){out=out" "$i}; print out}'
Verwenden Sie alternativ printf:
awk '{for(i=2;i<=NF;i++){printf "%s ", $i}; printf "\n"}'