On Saturday, June 2, 2012 at 9:16 PM, Allan McRae wrote:
Ack. On my working branch.
--- scripts/makepkg.sh.in (http://makepkg.sh.in) | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/scripts/makepkg.sh.in (http://makepkg.sh.in) b/scripts/makepkg.sh.in (http://makepkg.sh.in) index b0918ae..eb239e3 100644 --- a/scripts/makepkg.sh.in (http://makepkg.sh.in) +++ b/scripts/makepkg.sh.in (http://makepkg.sh.in) @@ -1048,7 +1048,7 @@ tidy_install() { local pt for pt in "${PURGE_TARGETS[@]}"; do if [[ ${pt} = "${pt//\/}" ]]; then - find . -type f -name "${pt}" -exec rm -f -- '{}' \; + find . ! -type d -name "${pt}" -exec rm -f -- '{}' \; else rm -f ${pt} fi
This is what I'm after. Instead of else ; rm -f ${pt}, maybe do: else ; find "${pt%*}" ! -type d -name "${pt##/*}" -exec rm -f -- '{}' + This should allow patterns like dir1/dir2/*.pl, but also match individually specified file names like dir1/dir2/somefile.txt JH