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

CIツールを使ったオートデプロイに関して

gitlabをあるプロジェクトで使っていますが、自動デプロイについて色々調べなんとかできたのでメモしておきます。 結論から書きますと下記のような手順でいけます。 1.まずデプロイしたいサーバーに鍵認証 …

no image

vimの小ネタ(主にテキスト置換系に関して)

前回に引き続き、またまたvimの小ネタなど Contents1 マクロ2 単純な置換3 改行系の置換4 一括置換 マクロ エディタ上である動作を記録させておきたい場合、q+任意の文字(例えばa)+任意 …

no image

apacheでのバーチャルホストの設定

このブログを旧サイトから移管し、同一ホストで別々のドメインを運用することになったので、バーチャルホストの設定を行いました。 Contents1 設定方法1.1 http.conf1.2 実際のバーチャ …

no image

クロスドメインがらみのajax

ajaxで別ドメインに対して、プログラムを実行したい時に注意すべきことなどを。 Contents1 ログ、レスポンスヘッダをとにかく追う2 特定ドメインからの許可3 フレームワーク側での認証ロジック( …

no image

firewall復習 ansibleコマンドもかねて

CentOS7ではファイアーウォールの設定をfirewallというコマンドで行います。要はportのブロックですね。 以前下記リンクでもfirewallについて書いたんですが、あまり理解もできていなか …

アーカイブ