Linuxの結合コマンド(paste,join)で作業効率が上がるかも?

Linuxの結合コマンド(paste,join)で作業効率が上がるかも?

ソフトバンク・au・ドコモの方は、公式のオンラインショップを利用すれば頭金不要で通常のショップよりお得に購入できます。

作業効率にお悩みはありませんか?

工数改善に一番簡単で効果的とされているのが「コマンド入力」。Unix/Linuxの標準コマンドにおいて「ls」や「cd」といった毎日のように使うものは習慣化するものですが、逆に普段使わないけど、知っておくと便利なコマンド紹介いたします。

paste:水平結合

テキストファイル等を水平方向に加工できるコマンドで、
簡易的だがファイル同士の結合も可能。
サンプルデータ:
sample1.txt
image07

sample2.txt
image17

全行結合して1つの行として出力

image16

-s:シングル水平化
-d:区切り文字(例だとカンマ)

複数カラム水平化(これは知らなかった。。。)

image13

「-」これを3つにすれば3カラムになる

簡易ファイル結合

image08
sample2.txtには1〜6の番号が入っているのでナンバリングした感じ

join:結合

指定カラムで結合する。
pasteは単純に水平で結合するのに対してカラム番号を指定しての結合が可能。

sample1.txt
image12

sample2.txt
image14

カラムを指定の結合

image11

-t:カンマ区切りにする
-1:1つめのファイルの結合カラム指定。例ではsample1.txtの最初のカラム
-2:2つめのファイルの結合カラム指定。例ではsample2.txtの最初のカラム

まとめ

実際のところ、個人的にはほぼテキスト処理をコマンドで行うことをしていません。
この手の“テキスト内の結合を行う”ケースは複雑な物が多く、perl等で簡単なバッチを書いているのが現状です。しかし、今回の執筆で改めて調査などでは使用できると実感しました。

いずれもサラリと出てくれば作業効率が向上すると思います。仮に実用性がなかったとしても、聞かれたらすぐに答えられるぐらいが格好いいですね。
以上、覚えておきたいコマンド紹介でした。

ソフトバンク・au・ドコモの方は、公式のオンラインショップを利用すれば頭金不要で通常のショップよりお得に購入できます。

【週刊bitWave】(メルマガ)始めました!

登録はこちらからメールアドレスを入力してお申込みください。

ご登録いただいたメールアドレスは 【週刊bitWave】の更新情報の配信にのみ使用します。

個人情報の取扱いに関しては、「プライバシーポリシー」をご確認ください。解除はいつでもこちらから行うことが可能です。

あなたにおすすめ