
ソースファイルの3列目のソートに基づいてファイルの内容を印刷したいと思います。
ソースファイル.txt:
Manav Kumaom Fre
shailesh himadri aif
manisha Kailash mac
Ravi Jwala blu
Prakash Ojha Zan
Mahi Aulakh yep
新しいファイルの3番目の列に従ってソートされたファイルの内容を印刷したいと思います。
希望の出力:
shailesh himadri aif
Ravi Jwala blu
Manav Kumaom Fre
manisha Kailash mac
Mahi Aulakh yep
Prakash Ojha Zan
答え1
この試み、
sort -k3 sourcefile.txt
-k
主な場所/フィールドで並べ替えます。
答え2
タグ付けした後チクル
set filename "sourcefile.txt"
set fh [open $filename r]
set data [split [read -nonewline $fh] \n]
close $fh
set sorted [lsort -index 2 -dictionary $data]
puts [join $sorted \n]
各行の3番目の単語に基づいてアルファベット順にソートします()-index 2
。各行が有効なリストであると仮定します。これは素朴です。これはより安全です。
set lines [split [read -nonewline $fh] \n]
set data [lmap line $lines {split $line}]
出力
shailesh himadri aif
Ravi Jwala blu
Manav Kumaom Fre
manisha Kailash mac
Mahi Aulakh yep
Prakash Ojha Zan