Mám soubory s názvem file.88_0.pdb , file.88_1.pdb , ... , file.88_100.pdb . Chci cat tak, že file.88_1.pdb se vloží za file.88_0.pdb , file.88_2.pdb za file.88_1.pdb , a tak dále. Pokud udělám cat file.88_*.pdb > all.pdb , soubory se skládají v tomto pořadí:0 1 10 11 12 13 14 15 16 17 18 19 2 20... , atd. Jak je dám dohromady, aby objednávka byla 0 1 2 3 4 5 6... ?
Přijatá odpověď:
Použijte brace expansion
cat file.88_{0..100}.pdb >>bigfile.pdb
Chcete-li ignorovat tisk chybových zpráv pro neexistující soubory, použijte:
cat file.88_{0..100}.pdb >>bigfile.pdb 2>/dev/null
V zsh shell také máte (n) globbing kvalifikátor pro vyžádání numerického řazení (na rozdíl od výchozího abecedního ) pro globy:
cat file.88_*.pdb(n) >>bigfile.pdb 2>/dev/null