Недавно я копировал и перемещал большое количество файлов (~ 400 000). Я знаю, что существуют ограничения на количество аргументов, которые могут быть расширены в командной строке Bash, поэтому я использовал xargs для ограничения созданных чисел.
Из любопытства я задавался вопросом, какое максимальное количество аргументов я мог бы использовать, и я нашел этот пост, говоря, что это была система -зависимый, и что я могу запустить эту команду, чтобы узнать:
$ getconf ARG_MAX
К моему удивлению, андерсер, которого я получил, был:
2621440
Только более 2,6 миллиона. Как я уже сказал, количество файлов, которыми я управляю, намного меньше, чем около 400 тыс. Мне определенно нужно использовать метод xargs
для перемещения и копирования этих файлов, потому что я попытался использовать обычный mv * ...
или cp * ...
и получил слишком длинную ошибку "Список аргументов".
Итак, команды mv
и cp
имеют собственный фиксированный предел количества аргументов, которые я могу использовать (я не мог найти что-либо на своих страницах), или я что-то пропустил?