Macでは、端末を介してjpg
生成された日付(例:)に基づいてstat -f %SB
約2400個のファイルを並べ替え、その順序で1つのPDFに変換するにはどうすればよいですか?
今日の午後11時10分に一つが生成され、同じ分で午後11時10分に二番目のものが生成されるとjpg
どうなりますか?作成日に考慮できる秒はありますか?
ベストアンサー1
ファイルシステムによって異なります。たとえば、私のホストは4番目の拡張ファイルシステム(ext4)を使用しているため、stat
ファイルを報告します。
$ touch foo; stat foo; rm foo
File: 'foo'
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fc00h/64512d Inode: 262155 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1000/ ownerusername) Gid: ( 1000/ ownerusername)
Access: 2017-06-21 14:28:16.150323827 -0700
Modify: 2017-06-21 14:28:16.150323827 -0700
Change: 2017-06-21 14:28:16.150323827 -0700
Birth: -
したがって、最後の修正時間を次のように使用できます。時間を作るというのはやや間違った名前です。。
find /path/to/images -type f -print0 -name \*.jpg | xargs -0 stat -c "%y|%n" | sort | awk -F'|' '{print $2}'
このやや面倒な構造は、最後の変更時刻に基づいてソートされたファイルのリストを提供します(|
その名前にファイルがない場合)。
このリストを確認したら、Imagemagickのconvert
ツールを使用してPDFを結合できます。
convert <<list of files>> outputfile.pdf
または一度にすべての操作を実行してください。
convert $(find /path/to/images -type f -print0 -name \*.jpg | xargs -0 stat -c "%y|%n" | sort | awk -F'|' '{print $2}') outputfile.pdf