On 2019-08-14, Christian Weisgerber <[email protected]> wrote:
> clean_old() {
> local _cver
>
> rm -rf /mnt/usr/lib/gcc-lib/!(*$VNAME)
> _cver=$(cd /mnt/usr/lib/clang 2>/dev/null && ls -r | sed -e 1q) &&
> rm -rf /mnt/usr/lib/clang/!($_cver)
> rm -rf /mnt/var/syspatch/*
> }
Use shell tools instead of fiddling with ls|sed:
clean_old() {
local _cver
rm -rf /mnt/usr/lib/gcc-lib/!(*$VNAME)
set -A _cver -- /mnt/usr/lib/clang/* &&
unset _cver[${#_cver[@]}-1] &&
rm -rf "${_cver[@]}"
rm -rf /mnt/var/syspatch/*
}
This sets an array to the expansion of the glob, which is an
alphabetically sorted list, drops the last element, and rm(1)s
the rest.
--
Christian "naddy" Weisgerber [email protected]