Ограничение команды rm в linux

Апрель28

Linux
Первый раз столкнулся с данной проблемой — у команды rm оказывается есть ограничение при работе с маской.

Если хотим удалить слишком много файлов с помощью команды rm и маски — то возникает ошибка:

rm: Argument list too long

Команда rm корректно обрабатывает маски до 1024 файлов, если их больше — то она уже не справляется.

 [user@feanor184]$ rm -rf 'files_marth_*'
 -bash: /bin/rm: Argument list too long

Самый простой, на мой взгляд, вариант решения проблемы, использовать xargs:

[user@feanor184]$ find . -name 'files_marth_*' | xargs rm -rf

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

Поделиться в соц. сетях


Copyright © 2013-2017. All rights reserved.

Опубликованно Апрель 28, 2017 by Feanor184 в категории Linux

Об Авторе

Постигаю Linux, учу Python, пытаюсь программировать)

Оставьте комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

=

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