Perl один лайнер
perl -e 'unlink grep {-s == 63} glob "*"'
Хотя перед запуском всегда рекомендуется проверить, что он будет делать:
perl -le 'print for grep {-s == 63} glob "*"'
Если вы хотите пройти по всему дереву каталогов, вам потребуются другие версии:
#find all files in the current hierarchy that are 63 bytes long.
perl -MFile::Find=find -le 'find sub {print $File::Find::name if -s == 63}, "."'
#delete all files in the current hierarchy that 63 bytes long
perl -MFile::Find=find -e 'find sub {unlink if -s == 63}, "."'
Я использую потребность $File::Find::name
в версии для поиска, поэтому вы получаете полный путь, версия без связи не нуждается, потому что File::Find
меняет каталог на каждый целевой каталог и задает $_
в качестве имени файла (то есть, как -s
и unlink
получают имя файла). Вы также можете посмотреть grep
и glob