shelltricks
Inhaltsverzeichnis
Shelltricks
Miscellaneous small shell scripts that I may or may not need again in the far future.
Check umask for all users
- check_user_umasks.sh
#!/bin/bash for user in $(awk -F: '{print $1}' /etc/passwd); do printf "%-20s" "$user" ; su -s /bin/bash -c 'umask' -l $user 2>/dev/null done
Original source: https://unix.stackexchange.com/a/82645
Show the dates of the oldest unseen messages in multiple maildirs, newest first
Beware of weird directory names. I am not responsible if this somehow does an rm -rf –no-preserve-root /
or something.
for dir in /var/vmail/domain/*/Maildir/new /var/vmail/domain/*/Maildir/.*/new; do echo -e "$(stat -c %y $dir/$(ls -Art $dir | head -1))\t$dir" done | grep -v '/\./' | sort -rn
Same thing, but for the newest seen messages:
for dir in /var/vmail/domain/*/Maildir/cur /var/vmail/domain/*/Maildir/.*/cur; do echo -e "$(stat -c %y $dir/$(ls -At $dir | head -1))\t$dir" done | grep -v '/\./' | sort -rn
The only differences are the folders (cur
vs. new
) and the sorting done by ls
.
Extract IP addresses from "ip a" output by regex
Might be useful for scripting, I guess.
IPRE='192\.168\.1\.|2001:1234:' ip a s up | grep -Eo "inet6? [^ /]+" | cut -d' ' -f2 | grep -E "$IPRE"
This prints:
192.168.1.123 2001:1234:5678:90ab:cdef:1234:5678:90ab
shelltricks.txt · Zuletzt geändert: 2021-08-02 14:19 von fanir