Рішення оболонки POSIX
Перше рішення тердона покладається на розширення брекетів , яке є властивістю, bashі ksh, однак, воно не може бути використане в стандартній /bin/shоболонці, з якою на Ubuntu посилається /bin/dash.
У випадках, коли вам доводиться покладатися /bin/shна портативність своїх сценаріїв, як правило, існує два способи наблизитись до цього. Одне було б через глобус. Просто cd folderAі звідти біжать rm a_*. Інший спосіб - реалізувати альтернативу циклу C-стилю для використання while <CONDITION>;do ...doneв мові оболонки та відформатувати числа за допомогою printf:
$ sh -c 'i=0;while [ $i -le 750 ]; do filename=$(printf "a_%06d" $i);echo "$filename";i=$((i+1)) ;done'
Зауважте, що тут я використовую echo. Замінити echo "$filename"з rm ./"$filename"або , rm -- "$filename"коли ви будете готові видалити файли. Також зауважте, що це потрібно зробити, коли ви вже cdввійшли в потрібний каталог.
(ab) з використанням awk
Будучи приємною мовою, схожою на C, може допомогти нам двома способами: (1) ми можемо генерувати назви файлів за допомогою циклу for-loop та форматувати їх за допомогою sprintfфункції, та (2) видаляти згадані файли за допомогою system()команди, яка передасть створене ім’я файлу та rmкоманду до /bin/sh:
awk 'BEGIN{for(i=0;i<=750;i++){filename=sprintf("a_%06d",i);system("rm "filename);} }'
Perl
Продовжуючи ідею портативного підходу, де ми "генеруємо" назви файлів, ми можемо зробити те ж саме в Perl:
perl -le 'for(0..750){$fd=sprintf("a_%06d",$_);unlink($fd)}'