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

OSI参照モデル イーサネットとMACアドレス

OSI参照モデルのレイヤー1とレイヤー2で必要不可欠な規格がイーサネットです。 有線ネットワークであればほぼこの規格を採用していると思って間違いないでしょう。 MACアドレスでコンピューターを識別する …

no image

phpenvで入れたphpの起動スクリプトに関して

以前、CentOS7.7にphp5.3を入れるという案件がありましたが、yumなどでは入らないため、phpenvで入れました。 phpenv5.3+php-fpm が、起動スクリプトを配置していないこ …

no image

zabbixアラートメール

以前、zabbixの基本設定についてこのエントリーでかきました。 今回はzabbixでの何らかの障害が発生した時に、アラートメールを送信したい場合について Contents1 ユーザーの登録&ユーザー …

no image

簡易サーバー(http-serverなど)

一般的にwebアプリを構築する際にはApacheやnginxといったwebサーバーを立てることが多いのですが、ローカルの開発環境で入れるのが面倒で、もっと簡易的にサクッと入れられる仕組みが欲しかったり …

no image

docker-composeに関して

dockerで環境構築する場合は基本的に下記のような流れをとると思います。 それぞれの出来合いのイメージをpull イメージに様々なライブラリをインストール それらをコンテナとして起動&連携 …