Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
1
Help us understand the problem. What is going on with this article?
@matyahiko2831

【Linux】catコマンドとリダイレクトを使いこなして作業効率アップ!

More than 3 years have passed since last update.

大量のデータを加工・編集しなければいけないときに、Excelやテキストエディタを使用することがあるかもしれません。

以下のLinuxコマンドを覚えておくと、作業効率がアップするかもしれません。

catコマンドで標準出力→出力内容を加工する という技を覚えると、
欲しいデータ形式が簡単に整えられます。

cat

処理概要
ファイルの内容を表示する。

コマンド例

$ cat test.txt
aaaa
bbbb
cccc

用途

  • とりあえずファイルの中身を見たい時
  • ファイルの内容をリダイレクトして加工したい時

リダイレクト

処理概要

標準出力を別ファイルに出力する。

コマンド例(catとの組み合わせ)

$ cat test.txt > new.txt  

用途

  • 出力結果を抽出・加工して別ファイルを作成したい時

grep

処理概要

文字列を検索する。

コマンド例(catとの組み合わせ)

# 対象ファイル
test.txt
aaaa
bbbb
cccc

$ cat test.txt | grep a
aaaa

用途

  • 元ファイルのデータを絞り込みたい時

cut

処理概要

ファイルから一部分を抜き出す。

コマンド例

# 対象ファイル
test.csv
aaa,bbb,ccc
ddd,eee,fff
ggg,hhh,iii

# csvの2カラム目を取得する
$ cat test.csv | cut -d ',' -f 2
bbb
eee
hhh

オプション

  • -d :区切り文字を設定する
  • -f :n番目のカラムを取得する

用途

  • csvなど規則的なデータの一部分を抜粋したい時
  • 日時(YYYY/MM/DD HH:MM:SS)のYYYY/MM/DD HHだけ抽出するなど サマリデータを作るための元ネタを用意したい時

paste

処理概要

ファイルを連結する。

コマンド例

#ファイルをカンマ区切りで結合させる
paste -d, 1.csv 2.csv 3.csv 4.csv > join.csv

オプション

  • -d :区切り文字を設定する

用途

  • csvファイルを再形成したい時
1
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
matyahiko2831
インプットしたこと・考えたことを言語化する練習をしています!お気軽にコメントください♪

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
1
Help us understand the problem. What is going on with this article?