たいちょーの雑記

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

シェル芸160ノック20

9月末に発売されたシェル芸本の続きです。いっぱい解いちゃった

gihyo.jp

前回はこちら

xztaityozx.hatenablog.com

問題103

$ seq 99 | awk '{print "ln hoge "$1}' | bash
$ ls -l hoge
-rw-r--r-- 100 xztaityozx xztaityozx 2 Dec 13 19:57 hoge

問題104

$ seq inf | while read L; do FN=$(perl -e "print \"a\"x$L"); touch $FN || {echo $L; break}; done
touch: cannot touch 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa': File name too long
256

問題105

$ du -sh /usr/* | sort -k2 | paste - <(du -s /usr/*|sort -k2) | sort -rnk3 | sel -gd\\s+ --remove-empty 1 2
3.7G /usr/lib
689M /usr/share
262M /usr/bin
62M /usr/include
26M /usr/sbin
648K /usr/libexec
88K /usr/local
12K /usr/games
8.0K /usr/config
4.0K /usr/src
4.0K /usr/libx32
4.0K /usr/lib64
4.0K /usr/lib32

問題106

$ ls -l /bin/ | awk '$1~/[^lwrx-]/'
total 271308
-rwsr-sr-x 1 daemon daemon      55560 Nov 13  2018 at
-rwxr-sr-x 1 root   tty         14488 Mar 30  2020 bsd-write
-rwxr-sr-x 1 root   shadow      84512 Jul 15 07:08 chage
-rwsr-xr-x 1 root   root        85064 Jul 15 07:08 chfn
-rwsr-xr-x 1 root   root        53040 Jul 15 07:08 chsh
-rwxr-sr-x 1 root   crontab     43720 Feb 14  2020 crontab
-rwxr-sr-x 1 root   shadow      31312 Jul 15 07:08 expiry
-rwsr-xr-x 1 root   root        39144 Mar  7  2020 fusermount
-rwsr-xr-x 1 root   root        88464 Jul 15 07:08 gpasswd
-rwsr-xr-x 1 root   root        55528 Jul 21  2020 mount
-rwsr-xr-x 1 root   root        44784 Jul 15 07:08 newgrp
-rwsr-xr-x 1 root   root        68208 Jul 15 07:08 passwd
-rwsr-xr-x 1 root   root        31032 May 26  2021 pkexec
-rwxr-sr-x 1 root   ssh        350504 Jul 23 21:55 ssh-agent
-rwsr-xr-x 1 root   root        67816 Jul 21  2020 su
-rwsr-xr-x 1 root   root       166056 Jan 19  2021 sudo
-rwsr-xr-x 1 root   root        39144 Jul 21  2020 umount
-rwxr-sr-x 1 root   tty         35048 Jul 21  2020 wall

問題107

WSLには /var/log/auth.log が無いらしい。のでさっき sudo systemctl start rsyslog した時のログです

$ grep sudo:session /var/log/auth.log | grep "opened for user" | sel 1 | uniq -c
      3 Dec

問題108

# 小問1
$ zcat qdata/108/syslog.gz | grep "Killed process" | sel 10 | tr -d '()' | uniq -c
      9 superapp

# 小問2
$ zcat qdata/108/syslog.gz | sed -nE 's/invoked oom-killer:.+//gp' | sel 7: | sort | uniq -c | sort -rn
      3 apache2
      2 gmain
      1 tmux: server
      1 systemd-network
      1 lsb_release
      1 apport

問題109

$ cat o | while read L F; do grep "$L" o | sed "s@\$@ $F@"; done | sel 2: --remove-empty | awk '$1!=$2'
/etc/subuid /etc/subgid
/etc/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service /etc/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service
/etc/pki/fwupd/LVFS-CA.pem /etc/pki/fwupd-metadata/LVFS-CA.pem
/etc/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service /etc/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service
/etc/pki/fwupd-metadata/LVFS-CA.pem /etc/pki/fwupd/LVFS-CA.pem
/etc/magic.mime /etc/magic
/etc/vmware-tools/suspend-vm-default /etc/vmware-tools/poweroff-vm-default
/etc/vmware-tools/poweron-vm-default /etc/vmware-tools/poweroff-vm-default
/etc/vmware-tools/resume-vm-default /etc/vmware-tools/poweroff-vm-default
/etc/vmware-tools/poweroff-vm-default /etc/vmware-tools/suspend-vm-default
/etc/vmware-tools/poweron-vm-default /etc/vmware-tools/suspend-vm-default
/etc/vmware-tools/resume-vm-default /etc/vmware-tools/suspend-vm-default
...