alias delfiles {
; ---- your default values ----
; default directory for the directory prompt, e.g. "var %start = C:"
var %start = C:
; default expression for the expression prompt, e.g. "var %default = No such paste:". You may leave it empty.
var %default = No such paste:
; ---- don't edit below if you don't know what you do ----
var %dir = $qt($$sdir(%start,Select a directory (Subdirectories won't be processed)))
set -u %delfiles.xp $+(*,$$input(Enter expression (Plaintext search, wildcard matching. You may use wildcards inside the expression.): $&
$crlf $crlf $+ All matching files will be removed!,eg,Delete all matching files in %dir,%default),*)
set -u %delfiles.n 0
var %total = $findfile(%dir,*,0,0,delfiles.filter $qt($1-))
echo -a Done. Found and deleted %delfiles.n files matching $qt(%delfiles.xp) in the directory %dir (Processed files: %total $+ ).
}
alias -l delfiles.filter {
filter -ffb $1- nul %delfiles.xp
if ($filtered) {
REMOVE -b $1-
inc %delfiles.n
}
}