LINUX.ORG.RU

поиск о совете


0

0

есть каталог /tmp/1
и есть /tmp/2
в первом - более 40 тысяч каталогов, и во втором - более 45 тысяч.
надо все подкаталоги каталога /tmp/1 перенести в /tmp/2

фактически mv /tmp/1/* /tmp/2/, но так нельзя:
-bash: /bin/mv: Argument list too long

подскажите, как справится с ситуацией в консоли ?

anonymous

ls /tmp/1 > some_file

и дальше с помощью какого-нибудь for?

sin_a ★★★★★
()

cd /tmp/1
ls | xargs -I {} mv {} /tmp/2/

Relan ★★★★★
()

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

ovax ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.