Список аргументов слишком длинный, всего 5000 файлов

У меня есть папка с 5000 файлами, которые я хочу скопировать где-то еще.

Когда я делаю cp ../folder* . , Я получаю следующую ошибку:

 -bash: /bin/cp: Argument list too long 

Однако getconf ARG_MAX возвращает 262144 .

 $ echo ../folder* |wc 1 5015 69144 

Это нормально? Я уже успел скопировать все эти файлы.

Используйте программу для итерации по аргументам:

например find .. -type d -iname '*/folder*' -exec cp -a {} . \; find .. -type d -iname '*/folder*' -exec cp -a {} . \;

ручного итерации с помощью цикла, например:

for myDir in ../folder* ; do cp -a "$myDir" . ; done

Есть много других способов, но один из вышеперечисленных должен сделать трюк для вас. (Пример для цикла может быть медленнее)