LinuxForum.Fans
Тема

Объединить текстовые файлы из большого числа каталогов в один файл|cat

Автор: valet 25 сообщений 9014 просмотров
#262230
"moshell" написал:
как это не будет работать?

[console]
alexander@goblin /tmp/1 $ for I in {1..100500}; do echo $I >"quite_long_name_$I"; done
alexander@goblin /tmp/1 $ cat *
bash: /bin/cat: Слишком длинный список аргументов[/console]

#262231

ах да.
там же вложенные папки должны быть.
вот

gu@moshell:~$ cat script
#!/bin/bash
COUNTER=0
while [ $COUNTER -lt 100500 ]; do
mkdir digit/$COUNTER
echo "The counter is $COUNTER" > digit/$COUNTER/$COUNTER.txt
let COUNTER=COUNTER+1
done

exit 0
gu@moshell:~$ cd digit/
gu@moshell:~/digit$ ls | wc -l
100500
gu@moshell:~/digit$ cat */* > ~/all.txt
gu@moshell:~/digit$ cd
gu@moshell:~$ cat all.txt | wc -l
100500
gu@moshell:~$
#262232
text
gu@moshell:~$ cat /proc/cpuinfo | grep mips
bogomips        : 4585.45
bogomips        : 4584.94
bogomips        : 4584.95
bogomips        : 4584.95
text
gu@moshell:~$ uname -a
Linux moshell 3.2.0-2-amd64 #1 SMP Mon Jun 11 17:24:18 UTC 2012 x86_64 GNU/Linux
gu@moshell:~$
#262276

moshell,
а так (увеличим длину параметров после глобинга)

text

$ cat script 
#!/bin/bash
COUNTER=0
while [ $COUNTER -lt 100500 ]; do
        echo "The counter is $COUNTER" > digit/quite_long_name_$COUNTER.txt
        let COUNTER=COUNTER+1
done
exit 0

?

#262504

я не понял. речь об чем шла?
о 100500 файлах или об чем?

Войдите или зарегистрируйтесь, чтобы ответить.