Ho file chiamati file.88_0.pdb
, file.88_1.pdb
, ...
, file.88_100.pdb
. Voglio cat
in modo che file.88_1.pdb
viene incollato dopo file.88_0.pdb
, file.88_2.pdb
dopo file.88_1.pdb
, e così via. Se eseguo cat file.88_*.pdb > all.pdb
, i file sono riuniti nel seguente ordine:0 1 10 11 12 13 14 15 16 17 18 19 2 20...
, ecc. Come li metto insieme in modo che l'ordine sia 0 1 2 3 4 5 6...
?
Risposta accettata:
Usa brace expansion
cat file.88_{0..100}.pdb >>bigfile.pdb
Per ignorare la stampa dei messaggi di errore per file inesistenti utilizzare:
cat file.88_{0..100}.pdb >>bigfile.pdb 2>/dev/null
Nel zsh
shell hai anche il (n)
qualificatore globbing per richiedere un numerico ordinamento (in contrasto con l'impostazione predefinita di alfabetico ) per i glob:
cat file.88_*.pdb(n) >>bigfile.pdb 2>/dev/null