X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=lib%2Flogin_functions.sh;h=13a2ba298abb41e34b7fa57175a3b4dbbd90c00a;hb=68992a1d4c1c60450ab72de97ec9d84ad1ca8169;hp=950eb6fe21c01d56516d06171ced966a90b6107f;hpb=610785ef4023005e406715f306b5ccb85273d670;p=khome.git diff --git a/lib/login_functions.sh b/lib/login_functions.sh index 950eb6f..13a2ba2 100644 --- a/lib/login_functions.sh +++ b/lib/login_functions.sh @@ -17,10 +17,13 @@ tdu() { # Most-recently modified file system objects recent() { - # Intentional non-quoting of the parameters, so that some can be ignored if - # not passed, rather than be passed to find as empty strings. - # NOTE that %T+ is a GNU extention. + # NOTES: + # - intentionally not quoting the parameters, so that some can be ignored + # if not passed, rather than be passed to find as an empty string; + # - %T+ is a GNU extension; + # - gawk is able to split records on \0, while awk cannot. find $@ -printf '%T@ %T+ %p\0' \ + | tee >(gawk -v RS='\0' 'END { printf("[INFO] Total found: %d\n", NR); }') \ | sort -z -k 1 -n -r \ | head -n "$(stty size | awk 'NR == 1 {print $1 - 5}')" -z \ | gawk -v RS='\0' ' @@ -30,7 +33,6 @@ recent() { sub("\\.[0-9]+", "") # Remove fractional seconds print }' - # gawk is able to split records on \0, while awk cannot. } recent_dirs() {