特定の文字を無視して、awkの出力をソートするにはどうすればよいですか?


1

私はラップトップに持っている中国語フォントを印刷し、で参照できる名前に関して出力をソートしようとしていLaTeXます。これは、次のコマンドで実行できます。

fc-list :lang=zh-cn | awk -F": " '{$1=""; print}' | sort

フォントリストを検索し、最初に出現した後:、フォントの名前が表示される単一のスペースを見つけます。それからもちろんソートします。

ここでの問題は、のような名前のフォントがあり、それが.PingFang SC最前面にソートされており、残りとは一貫性がないことです。期間を無視してソートする方法はありますか?

ピリオドを削除すると、フォントの実際の名前が変更され、参照が難しくなります。

回答:


1

使用してみてくださいsort -d (「辞書順」。非アルファ文字は無視されるようです):

$ printf "Orange\n.PingFang\nRed\n" | sort
.PingFang
Orange
Red

$ printf "Orange\n.PingFang\nRed\n" | sort -d
Orange
.PingFang
Red

動作します!本当にありがとう!余分なスペースを追加することによって生じる空白の出力に関するアイデアはありますか?
zyy

申し訳ありませんが、あなたの言っていることがわかりません。質問を編集して、入力(つまりの出力fc-list)と出力の例を表示できますか?
スコット

問題が何であるかがわかり$1=""ます。余分なスペースはコマンドの結果です。今はすべて良いです、ありがとう!
zyy
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.