【linux】ディレクトリ内のファイルに繰り返し処理を実行するワンライナー | 瀬戸内の雲のように

【linux】ディレクトリ内のファイルに繰り返し処理を実行するワンライナー

Posted: 2018-01-30


スポンサーリンク

目次

背景

突然ですが、私はワンライナーが好きです。いちいちシェルスクリプトにすると、ファイルがたくさん増えてしまい汚くなってしまうので、簡単な処理ならできるだけワンライナーにしたいと思っています。

 
今回はそんな私がよく使うワンライナーをご紹介します。

概要

Linuxサーバ上で作業をしている時、入力値としてディレクトリ内のファイル名一覧が欲しいことってありませんか?ありますよね。ええ。

初心者だった頃の私は、そんな時は一度lsコマンドの実行結果をファイルに出力させ、そのファイルをwhile文などで読み込ませる方法を取っていました。

つまりこんな感じです。

# access.logからアクセス数をIP毎にソートする

$ ls -l | grep "access\.log" | awk '{print $NF}' > access_log_list.txt

$ while read FILE ; do echo "==== ${FILE} ====" ;zcat ${FILE} | awk '{print $1}' | sort | uniq -c  ; done < access_log_list.txt

これでも良いのですが、私はこのaccess_log_list.txtみたいなのが溜まってしまうのが嫌なのです。私は面倒くさがりなので、大抵この手のファイルは残ってしまいます。

ワンライナーにする

ということで、上記の処理をワンライナーにしましょう。

$ ls -1 | grep 'access\.log' | while read FILE ; do echo "==== ${FILE} ====" ; zcat ${FILE} | awk '{print $1}' | sort | uniq -c  ; done

これでできます。なんてことはない、ただlsの結果をパイプでつないでwhileに渡すだけなのですが。
昔の自分はこういうのを知らなくていちいちスクリプトにしていた、という若干恥ずかしいお話でした。おしまい。


スポンサーリンク




コメント一覧

2020/12/24 00:45:28

Brogemsさん

Celebrex From Canada usacybes [url=https://bansocialism.com/]overnight cialis delivery[/url] glicky levitra medicamento para impotencia


2021/02/12 07:43:40

buy chloroquine ukさん

chloroquine antimalarial https://chloroquineorigin.com/ chlorquine


2021/03/13 23:45:00

Esogragmaさん

https://ponlinecialisk.com/ - order cialis


2021/04/08 01:46:33

tyncさん

Writing a essay can look to be intimidating endeavor, however, it doesn have certainly to become overpowering. ... even though an admissions article is normally about a specific issue, a faculty academic article is appropriate and commonly requires specialized resources. Attentively investigate your theme Just before you commence producing and also reduce your attention. https://untmg.org/features-argumentative-essay/


2021/05/11 07:39:08

Brogemsさん

kamagraoraljellsold inperthpharmacy



コメントを投稿する


お名前


コメント内容





TOP back