入門

パート 6

アーカイブ・転送・メディア:手順そのものも持ち運ぶ

梱包、検証、転送、変換は一つの再現可能な作業列にできます。

アーカイブはチェックポイント

TAR/ZIP は多数のパスを名前付きの一つのオブジェクトにします。バックアップはソースと分け、作成後すぐ確認します。

install md mf dir stat tar zip upload img exif attr copy
cd lil-playground
md archive-demo
mf archive-demo/README.txt
mf archive-demo/config.ini
md backups
tar archive-demo backups/archive-demo.tar -f
stat backups/archive-demo.tar

TAR・ZIP・GZIP は役割が違う

lil の TAR は非圧縮、ZIP は圧縮を含み、GZIP は単一ファイル用です。

tar backups/archive-demo.tar -l
tar backups/archive-demo.tar -t
zip archive-demo backups/archive-demo.zip -f -6
zip backups/archive-demo.zip -t

展開前に一覧とテスト

書き込まずに内容と整合性を確認します。練習ではソースの上ではなく restore-test に展開します。

md restore-test
tar backups/archive-demo.tar restore-test
dir 2 restore-test -G -a

アップロード/ダウンロードはブラウザとファイルシステムをつなぐ

upload で選んだファイルは同じディレクトリツリーに入り、download はブラウザー側へ戻します。ディレクトリは一時 TAR として転送されます。

md media
upload media
download backups/archive-demo.zip -n archive-demo-backup.zip
download archive-demo

ピクセルを変える前に画像を確認

imgexifattr で形式、寸法、利用可能なメタデータを見ます。EXIF は必ず存在するものではありません。

img media/photo.jpg
exif media/photo.jpg -i
attr media/photo.jpg dimensions

一括処理はコピーで先に試す

元ファイルをコピーし、寸法・形式・品質を代表画像で検証してから多数へ適用します。

copy media media-work
img media-work/photo.jpg -s 1600x1600 -t webp -q 82 -o media-work/photo.webp
img -f media-work "*.jpg" -s 1600x1600 -t webp -q 82
dir 1 media-work -G -a

配布パッケージは再構築できる

アーカイブ作成と完全性テストをスクリプトに保存すれば、リリースが記憶に依存しません。

スクリプトとして残す

package-project.lil は TAR/ZIP を再作成し、両方をテストしてバックアップディレクトリを表示します。

#lil
@install md dir stat tar zip
cd lil-playground
md backups
tar archive-demo backups/archive-demo.tar -f
tar backups/archive-demo.tar -t
zip archive-demo backups/archive-demo.zip -f -6
zip backups/archive-demo.zip -t
dir 1 backups -G