Как удалить папку с большим количеством файлов

P
На сайте с 08.03.2007
Offline
250
#61
Himiko:
каких ещё значений?
rm -rf * в папке, где много файлов выдаст такую ошибку (возможно в новых ядрах и можно обойти, я точно не знаю)

не надо делать в папке где много файлов такую команду. Надо делать команду в папке уровнем выше, и давать ей ОДИН аргумент - имя удаляемой папки.

Himiko
На сайте с 28.08.2008
Offline
560
#62
Pilat:
не надо делать в папке где много файлов такую команду. Надо делать команду в папке уровнем выше, и давать ей ОДИН аргумент - имя удаляемой папки.

Проверить сейчас негде, но, на сколько помню, ошибка будет точно такая же. В любом же случае сначала файлы удаляются из директории, а уже потом сама дира.

Профессиональное администрирование серверов (https://systemintegra.ru). Круглосуточно. Отзывы (/ru/forum/834230) Лицензии (http://clck.ru/Qhf5) ISPManager,VDSManager,Billmanager e.t.c. по низким ценам.
P
На сайте с 08.03.2007
Offline
250
#63
Himiko:
Проверить сейчас негде, но, на сколько помню, ошибка будет точно такая же. В любом же случае сначала файлы удаляются из директории, а уже потом сама дира.

та же быть в принципе не может. Если '*' - то она разворачивается в список файлов, и этот список передаётся команде, в этом месте и происходит переполнение буфера. При передачи одного имени директории если ошибка и будет, то в экзотических реализациях команды rm

rtyug
На сайте с 13.05.2009
Offline
263
#64

попробуйте unlink может оно удалит

Спалил тему: Pokerstars вывод WMZ, etc на VISA 0% или SWIFT + Конверт USD/GBP,etc (net profit $0,5 млрд) (https://minfin.com.ua/blogs/94589307/115366/) Monobank - 50₴ на счет при рег. тут (https://clck.ru/DLX4r) | Номер SIP АТС Москва 7(495) - 0Ꝑ, 8(800) - 800Ꝑ/0Ꝑ (http://goo.gl/XOrCSn)
M
На сайте с 16.09.2009
Offline
278
#65
Himiko:
Я уже привёл пример ошибки выше. (/bin/rm: Argument list too long)

Чудо, тебе разжевали, что такое будет только в случае вызова "rm *". Если просто "rm -rf <каталог>" (как советовали) - аргуменов у rm ровно два.

Himiko:
rm -rf * в папке, где много файлов выдаст такую ошибку (возможно в новых ядрах и можно обойти, я точно не знаю)

Можно. Подробно написали почему и как.

Танкисты: внимание - Pilat не предлагал это идиотское решение. Предлагали выполнить команду "rm -rf <директория_для_удаления>". Поймите, пожалуйста, разницу.

Himiko:
Проверить сейчас негде, но, на сколько помню, ошибка будет точно такая же. В любом же случае сначала файлы удаляются из директории, а уже потом сама дира.

Зачем такую глупость "проверять". Нужно знать, что будет не также. Достаточно элементарные знания вообще-то. Очень странно видеть "администратора", который не понимает как вызов exec работает, как shell вызывает exec в конкретном случае и сколько параметров передает.

Pilat:
При передачи одного имени директории если ошибка и будет, то в экзотических реализациях команды rm

Нету таких "экзотических" - не нужно ничего выдумывать.

rtyug:
попробуйте unlink может оно удалит

Вы уж сразу сискол советуйте дергать из кода на ассемблере.

Абонементное сопровождение серверов (Debian) Отправить личное сообщение (), написать письмо ().
Himiko
На сайте с 28.08.2008
Offline
560
#66
myhand:
Чудо, тебе разжевали, что такое будет только в случае вызова "rm *". Если просто "rm -rf <каталог>" (как советовали) - аргуменов у rm ровно два.
Можно. Подробно написали почему и как.

Очень странно видеть "администратора", который не понимает как вызов exec работает, как shell вызывает exec в конкретном случае и сколько параметров передает.

1. Прошу впредь обращаться ко мне либо по имени, либо по имени (если оно известно).

2. Здесь дело не в shell exec, просто действительно поторопился с выводами. Не вник в суть ошибки.

R
На сайте с 12.03.2011
Offline
10
#67

а тема, чтоли актуальна?:) rm -r не помогает? хм, странно

ratcorz.livejournal.com (http://ratcorz.livejournal.com)
Himiko
На сайте с 28.08.2008
Offline
560
#68
ratcorz:
а тема, чтоли актуальна?:) rm -r не помогает? хм, странно

В теме уже давно обсуждают всё подряд)

M
На сайте с 16.09.2009
Offline
278
#69
Himiko:
2. Здесь дело не в shell exec

В данном случае - дело именно в этом. Обладая соответствующими знаниями, невозможно "поторопиться" с выводами, как сделали Вы.

M
На сайте с 01.12.2009
Offline
235
#70

myhand Мы Люди, голова не дом советов, все делают ошибки.

Администратор Linux,Freebsd. построения крупных проектов.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий