0

このようなエントリを並べ替えようとしています。天文座標とそれらの地域の名前を使用して、地域に対応するテキスト データを書式設定しただけです。中括弧内にある名前に基づいてこれらの地域を整理したいと思います。

circle(20:34:36.717,+40:51:51.90,15") # text={オタマジャクシ4h}

circle(20:25:28.500,+41:08:20.80,15") # text={オタマジャクシ33}

circle(20:32:40.867,+41:51:25.24,15") # text={オタマジャクシ45}

オタマジャクシのフィールドに続く数字に基づいて、私はLinuxに比較的慣れていませんが、他のスタックの質問を見て、これを理解したと思いました。これは私のクラックでした:

sort -k54,56 -n test.reg

sort -k54,55 -n < test.reg

sort -k55,57 -n < test.reg

sort -k55,56 -n < test.reg

また、k と n を入れ替えて、各部分を完全に綴ってみました。検索を考えていた別の方法は、ワイルドカードを使用してオタマジャクシの文字列に到達し、そこから並べ替えることができるかどうかですが、ワイルドカードを並べ替えに使用する方法がわかりませんでした。

4

1 に答える 1

0

sed を使用して、各行にオタマジャクシ番号のプレフィックスを付けてから、このプレフィックスで行を並べ替えることができます。

sed 's/.*tadpole\([^}]*\)}/\1 &/' test.reg | sort -t' ' -k1

印刷する前にプレフィックスを削除することもできます。

sed 's/.*tadpole\([^}]*\)}/\1 &/' test.reg | sort -t' ' -k1 | sed 's/^[^ ]* //'
于 2013-03-19T00:06:27.897 に答える