2016-11-17 3 views
0

meine Datei sieht wie folgt Angenommen:Wie ersetzt man andere Spalteneinträge bei der Suche nach einer bestimmten Spalte in einer Datei?

A 1 0 
B 1 0 
C 1 0 

Wie kann ich für die Linie suchen, die B in der ersten Spalte hat, und wenn ja, schalten Sie die Einträge in der zweiten und dritten Säule? So würde mein letztes Ergebnis wie folgt aussehen:

A 1 0 
B 0 1 
C 1 0 
+0

Was ist das Trennzeichen? Ein Leerzeichen oder ein Tab? – Cyrus

+1

Dies ist eine gute Frage, in der das Problem klar erklärt wird. Um es zu einer noch besseren Frage zu machen, dass mehr Leute daran interessiert sind, mitzuhelfen, etwas Forschung hinzuzufügen oder Ihre Versuche aufzuzeigen, das Problem zu lösen, und wo Sie stecken bleiben. – jas

+0

Mögliches Duplikat von [Zeile in einer .txt-Datei in bash ändern] (http://stackoverflow.com/questions/40633311/modify-line-in-a-txt-file-in-bash) – Cyrus

Antwort

0

dies versuchen -

[email protected]:~$ awk '{if($1 == "B") {print $1,$3,$2} else print $1,$2,$3}' kk 
A 1 0 
B 0 1 
C 1 0 
Verwandte Themen