列でソートしてから

列でソートしてから

次の内容を含む出力ファイルがあるとします。

010513  08:04   ROUTER1   192.168.1.1   68.130.5.10  HIT(1)
010513  08:04   ROUTER1   172.168.1.1   28.130.5.10  HIT(1)
010513  08:04   ROUTER1   122.168.1.1   168.130.5.10  HIT(1)
010513  08:04   ROUTER1   192.168.1.1   18.130.5.10  HIT(1)
010513  08:04   ROUTER1   152.168.1.1   58.130.5.10  HIT(1)
010513  08:04   ROUTER1   142.168.1.1   10.130.5.10  HIT(1)

まず、列4で並べ替えてから列5で並べ替えようとしましたが、実際の出力ファイルに約20列があるため、強調色も効果がありました。様々なgrep sort コマンドを試してみましたが、結果ファイルを数回実行しなくても機能するのに問題がありました。私はスクリプトを書いていないので、そこに1つあると確信していますが、試すことができる結合されたコマンド/変数があるかどうか尋ねたいと思いました。

答え1

sort -V -k 4,5あなたが探しているものかもしれません。 IPモードで出力をgrepすると、IP(sort -V -k 4,5 < file | grep -E '([0-9]{1,3}\.){3}[0-9]{1,3}')に色が割り当てられます。

関連情報