skillup

技術ブログ

サーバー・ネットワーク

Linuxコマンドでのテキスト整形 CSV系の処理など

投稿日:2016年5月6日 更新日:

以前、対テキストファイル系のLinuxコマンドの使い方を紹介しましたが、その関連エントリーを。

今回やるのはCSV系の処理ですね。

id name age
1  suzuki 35
2  tanaka 40

などといったデータをヘッダーを無視して年齢順に並べたいとき、

1 ヘッダーを無視したいので2行目から出力する(head -n+1 テキストファイル名)

2 対象データをあるキーで数値としてソートする(sort -k 3,3 -n 通常は数値でなく、文字扱いになるので文字列だと1<10<5<50となる)

これらをパイプでつなぐと下記のようになります。

また特定のキーで特定条件にあたるものの別の列を出力したいとき

上記のCSVの例でいうと20才以上のid,nameを出力したいときはcatとawkを使い下記のように書きます。

参考リンク

sortコマンド、基本と応用とワナ

awk入門 コマンドの使い方とスクリプトの書き方

-サーバー・ネットワーク
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

SQLインジェクション

セキュリティ関係の知識がぬるいのでちょっとお勉強。 知っていることもあるが復習もかねて勉強を。 Contents1 SQLインジェクションとは?2 被害3 対策4 参考サイト・書籍5 ソース SQLイ …

no image

ネットワーク基礎 OSI参照モデルなど

ここ↓でネットワークの基礎についてかいてあるので定期的に勉強しようと思っています。 3分間 NetWorking Contents1 スニーカーネットからリソース共有2 LANとWAN3 OSI参照モ …

no image

WinSCPの活用法

WinSCPの活用方法などについて WinSCPでZIPの解凍、ZIPへの圧縮を右クリックからカスタムコマンドで実行できるようにする。 特にzipでファイルを固める処理はよくやるので覚えておきましょう …

no image

Vagrantでのフォルダ共有

Contents1 vagrantとホストOSのフォルダの共有2 ネットワークアダプタ設定3 任意のディレクトリをマウント vagrantとホストOSのフォルダの共有 ディフォルトではvagrantは …

no image

dockerコマンドについて再考(ttyや/bin/bashなど)

Contents1 ttyオプションに関して2 docker execコマンドに関して2.1 ログインしないパターン2.2 shellに関して ttyオプションに関して dockerでnodeを起動さ …

アーカイブ