たいちょーの雑記

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

シェル芸160ノック18

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

gihyo.jp

前回はこちら

xztaityozx.hatenablog.com

問題90

$ echo 12 4 34 8 56 16 | xargs -n2 | awk '{print "numconv -b"$2" <<< "$1}'  | bash| jq -s add
120

問題91

$ echo {2,3,5,7},{2,3,5,7},{2,3,5,7} | fmt -1 | awk -F, '$1<=$2&&$2<=$3&&$1+$2>$3'
2,2,2
2,2,3
2,3,3
2,5,5
2,7,7
3,3,3
3,3,5
3,5,5
3,5,7
3,7,7
5,5,5
5,5,7
5,7,7
7,7,7

問題92

$ yes | ocs '0.01*Math.Pow(2,NR)>1000*1000*1000{println(NR);Environment.Exit(0)}'
37

問題93

dateutils.dseq --format "%Y%m%d%H%M%S" 2019-01-01T00:00:00 1s 2021-12-31T00:00:00 | factor | awk 'NF==2{print $2;exit}'
20190101000023

問題94

$ echo {0..10},{0..10},{0..10},{0..10} | fmt -1 | awk -F, '$1^2+$2^2+$3^2+$4^2<=100{print $0,$1^2+$2^2+$3^2+$4^2}' | sort -k2n | uniq -f1 | sed 1d
0,0,0,1 1
0,0,1,1 2
0,1,1,1 3
0,0,0,2 4
0,0,1,2 5
0,1,1,2 6
1,1,1,2 7
0,0,2,2 8
0,0,0,3 9
0,0,1,3 10
0,1,1,3 11
0,2,2,2 12
0,0,2,3 13
0,1,2,3 14
1,1,2,3 15
0,0,0,4 16
0,0,1,4 17
...

問題95

$ seq 0 8 | ocs "{println(Convert.ToString(i(F0) ^ i(F0)>>1,2).PadLeft(8,'0'))}"
00000000
00000001
00000011
00000010
00000110
00000111
00000101
00000100
00001100

問題96

$ awk '{a[$0]++;b[$0]=b[$0]","FILENAME}END{for(k in a) if(a[k]==3) print k""b[k]}' * | sort | sel -d, 0
2019/07/10 user1 user2 user3
2019/07/15 user1 user3 user4

問題97

$ cat qdata/97/tate.txt | sd '(.)' '"$1" ' | awk '{for(i=1;i<=NF;i++)printf "%s ", $i; for(i=NF;i<=17;i++) printf "\" \"";print "";}' | rs -T | tr -d \"\  | ocs '{println((NR,F0.IndexOf("たてよみ")+1))}' | tr -d '(),' | awk '$2==1{print $2,$1}'
1 3