Случвало ли ви се е в папка да имате 50 000 директории или файлове и да решите, че трябва да ги изтриете. Ако решите да ги изтриете всичките (rm -fr *) ще ви излезе съобщение:
-bash: /bin/rm: Argument list too long
Това се получава защото има прекалено много файлове (или максимален размер на аргументите)
Ето го и ограничението от kernel_limits:
egrep ARG_MAX /usr/include/linux/limits.h
#define ARG_MAX 131072 /* # bytes of args + environ for exec() */
Решение 1:
find $PWD -exec rm -fr {} \;
Решение 2:
Изтриване на папката и след това ново създаване
rm -fr ufiles;mkdir ufiles;
Хубавото на Решение 1 е, че ако желаете да изтриете конкретни файлове може да използвате -name, а именно:
find $PWD -name "martin.*" -exec rm {} \;
Винаги когато ми се наложи -- знам, че тук мога да погледна :)