Hilfe zum Konvertieren von Zeilen in Spalten in Unix-Skripts. Meine Quelle ist das Dateisystem.Unix awk scripting zum Konvertieren von Spalten in Zeilen
das unten stehende Skript versucht:
`perl -nle '
if($. == 1)
{ (@a)=/([\w - .]+)(?=,|\s*$)/g }
else
{
(@b)=/([\w - .]+)(?=,|\s*$)/g;
print "$a[0]|$b[0]|$b[1]|$b[2}|$a[$_]|$b[$_+3]" foreach (0..$#a)
}
' ip.txt >op.txt
input data from file:
src,FI,QMA,PCG,PCC,PREI,G T
PIM2016.csv,MMR.S T - RED,334,114,120,34,123,725
Ausgabe mit den neuesten Skript:
SRC | PIM2016.csv | MMRPPS | RED | SRC | 334 SRC | PIM2016.csv | MMRPPS | RED | FI | 114 SDRC | PIM2016.csv | MMRPPS | ROT | QMA | 120 SRC | PIM2016.csv | MMRPPS | ROT | PCG | 34 SRC | PIM2016.csv | MMRPPS | ROT | PCC | 123 SRC | PIM2016.csv | MMRPPS | ROT | PREI | 725 SRC | PIM2016.csv | MMRPPS | ROT | GT |
Erforderliche Ausgabe:
SRC | PIM2016.csv | MMRPPS | ST -RED | FI | 334 SRC | PIM2016.csv | MMRPPS | ST -RED | QMA | 114 SRC | PIM2016. csv | MMRPPS | ST -RED | PCG | 120 SRC | PIM2016.csv | MMRPPS | ST -RED | PCC | 34 SRC | PIM2016.csv | MMRPPS | ST -RED | PREI | 123 SRC | PIM2016.csv | MMRPPS | ST -RED | GT | 725
Vielleicht könnten Sie teilen, was Sie bisher versucht haben und wo Sie gerade kämpfen? – wwkudu
haben Ihre tatsächlichen Daten mehr als zwei Zeilen? Wenn ja, können Sie Ihre Beispieleingabe mit mindestens zwei dieser Daten und der erwarteten Ausgabe ändern? – Sundeep
@Sundeep: Ja tatsächliche Daten als mehr als zwei Zeilen. Ich werde die Beispieldaten ändern – udayadevan