たいちょーの雑記

ぼくが3日に一度くらい雑記をかくところ

シェル芸160ノック26

9月末に発売されたシェル芸本の続きです。

gihyo.jp

前回はこちら

xztaityozx.hatenablog.com

問題141

$ yes | awk '{print "echo",NR",""$(shuf -n5 -re {a..z}),$(shuf -n10 -re {a..z}),$(shuf -n5 -re {a..z})@mail.com"}' | head -n1000 |bash | tr -d ' ' | head
1,hyoah,pgdawiluzg,xwrui@mail.com
2,xbabm,gnmbcoxsri,ixpzm@mail.com
3,jyojm,rdjdcqqcus,hwrpa@mail.com
4,ehzdr,ihdnpkjvzi,gknmw@mail.com
5,jdxht,hnyxucnbcw,rvvvi@mail.com
6,bypgy,brjilztgyc,pnqwy@mail.com
7,foxwp,aymknffafy,mvclb@mail.com
8,dlwte,umqxtwcdal,uwoth@mail.com
9,wbhkw,cxrtjswfmt,bxsrq@mail.com
10,alkvf,bpdwkemdsh,phqcv@mail.com

問題142

$ echo blog.ueda | command xxd -b -c1 | sel 2 | tr -d \\n | ocs '{for(var i=0;i<F0.Length;i++)println(F0)}' | awk '{$NR=!$NR;print}' FS='' OFS='' | perl -lne 'print pack("B*", $_)' | grep -P '^[a-z\.]+$'
rlog.ueda
jlog.ueda
flog.ueda
clog.ueda
bdog.ueda
bhog.ueda
bnog.ueda
bmog.ueda
blgg.ueda
...

問題143

$ git status  --short | awk '$1=="M"&&$2~/B/{print $2}'  | xargs git add

問題144

$ fd . ./img ./css --type=f --exec git checkout "HEAD^" {}
Updated 1 path from c335175
Updated 1 path from c335175
Updated 1 path from c335175
Updated 1 path from c335175

問題145

$ git log --date=unix | grep Date: | awk '{if(b)print $2,b;b=$2}' | awk '{print ($2-$1)/3600}'
5.87694
0.0141667
232.218
47.4703
31.0544
0.0580556
16.2336
1181.22
1345.62
1581.95
...