ファイルがリストされる順序

ファイルがリストされる順序

ディレクトリにファイルのリストがある場合

ullman-000.pbm
ullman-001.pbm
...
ullman-098.pbm
ullman-099.pbm
ullman-1000.pbm
ullman-1001.pbm
ullman-1002.pbm
ullman-1003.pbm
ullman-1004.pbm
ullman-1005.pbm
ullman-1006.pbm
ullman-1007.pbm
ullman-1008.pbm
ullman-1009.pbm
ullman-100.pbm
ullman-1010.pbm
ullman-1011.pbm
ullman-1012.pbm
ullman-1013.pbm
ullman-1014.pbm
ullman-1015.pbm
ullman-1016.pbm
...

コマンドに入力ファイルとしてullman*.pbm使用して渡すときは、次の順序でどのように作成できますか?convert ullman*.pbm ullman.pdf

ullman-000.pbm
ullman-001.pbm
...
ullman-098.pbm
ullman-099.pbm
ullman-100.pbm
...
ullman-999.pbm
ullman-1000.pbm
ullman-1001.pbm
ullman-1002.pbm
ullman-1003.pbm
ullman-1004.pbm
ullman-1005.pbm
ullman-1006.pbm
ullman-1007.pbm
ullman-1008.pbm
ullman-1009.pbm
ullman-1010.pbm
ullman-1011.pbm
ullman-1012.pbm
ullman-1013.pbm
ullman-1014.pbm
ullman-1015.pbm
ullman-1016.pbm
...

ありがとうございますか?

ベストアンサー1

GNUは成功するsortかもしれませんxargs

printf '%s\0' ullman*.pbm | sort -z -k2,2n -t'-' | xargs -0 convert 

まず、呼び出さずにファイルを一覧表示して、これが機能していることを確認してください。convert

printf '%s\0' ullman*.pbm | sort -z -k2,2n -t'-' | xargs -0 printf '%s\n'
ullman-000.pbm
ullman-001.pbm
ullman-098.pbm
ullman-099.pbm
ullman-100.pbm
ullman-1000.pbm
...

しかし、

printf '%s\0' ullman*.pbm  | xargs -0 printf '%s\n'                                                              
ullman-000.pbm
ullman-001.pbm
ullman-098.pbm
ullman-099.pbm
ullman-1000.pbm
..
..

おすすめ記事