File: shrinkpix/examples/example3-collect-unshrunk-images.txt
######################################################################################################## # Basic use, with all "factory" settings ($C is your code/install folder, py3==python3) ######################################################################################################## # Starting tree state (see _README.txt for diffall) ~/Desktop$ py3 $C/mergeall/diffall.py examples/subfolders/ examples_start/subfolders/ -skipcruft | tail -n 6 ================================================================================ Runtime hrs:mins:secs = 0:0:0.02 Dirs checked 12, Files checked: 49, Files skipped: 0 System metadata (cruft) files were skipped No diffs found. End of report. ~/Desktop$ find examples/subfolders/ -name _shrinkpix-originals -print ~/Desktop$ # # Shrink all images in a nested-folder tree # # List large images ~/Desktop$ py3 $C/shrinkpix/shrinkpix.py examples/subfolders -listonly /Users/blue/Desktop/examples/subfolders/2000-newmarket-1.jpg [1120748 bytes, not changed] /Users/blue/Desktop/examples/subfolders/2002-barcelona-2.jpg [883737 bytes, not changed] /Users/blue/Desktop/examples/subfolders/2006-chicago-2.JPG [702716 bytes, not changed] /Users/blue/Desktop/examples/subfolders/2015-florida.JPG [1692084 bytes, not changed] /Users/blue/Desktop/examples/subfolders/2015-seattle.JPG [1572370 bytes, not changed] /Users/blue/Desktop/examples/subfolders/Subfolder1/2000-newmarket-1.jpg [1120748 bytes, not changed] /Users/blue/Desktop/examples/subfolders/Subfolder1/2002-barcelona-2.jpg [883737 bytes, not changed] /Users/blue/Desktop/examples/subfolders/Subfolder1/SubSubfolder/2002-barcelona-2.jpg [883737 bytes, not changed] /Users/blue/Desktop/examples/subfolders/Subfolder2/2006-chicago-2.JPG [702716 bytes, not changed] /Users/blue/Desktop/examples/subfolders/Subfolder2/rawsubfolder/2000-newmarket-1.jpg [1120748 bytes, not changed] /Users/blue/Desktop/examples/subfolders/Subfolder2/rawsubfolder/2002-barcelona-2.jpg [883737 bytes, not changed] /Users/blue/Desktop/examples/subfolders/Subfolder3/2015-florida.JPG [1692084 bytes, not changed] /Users/blue/Desktop/examples/subfolders/Subfolder3/2015-seattle.JPG [1572370 bytes, not changed] Done: 24 files, 15 images, 13 large images # Shrink large images ~/Desktop$ py3 $C/shrinkpix/shrinkpix.py examples/subfolders This script shrinks images in place, after saving originals; continue? y /Users/blue/Desktop/examples/subfolders/2000-newmarket-1.jpg Old size: 1120748 bytes [optimize] New size: 484003 bytes /Users/blue/Desktop/examples/subfolders/2002-barcelona-2.jpg Old size: 883737 bytes [optimize] New size: 349506 bytes /Users/blue/Desktop/examples/subfolders/2006-chicago-2.JPG Old size: 702716 bytes [optimize] New size: 264567 bytes /Users/blue/Desktop/examples/subfolders/2015-florida.JPG Old size: 1692084 bytes [optimize+quality+resize] [resized at 0.60] New size: 374958 bytes /Users/blue/Desktop/examples/subfolders/2015-seattle.JPG Old size: 1572370 bytes [optimize] New size: 449090 bytes /Users/blue/Desktop/examples/subfolders/Subfolder1/2000-newmarket-1.jpg Old size: 1120748 bytes [optimize] New size: 484003 bytes /Users/blue/Desktop/examples/subfolders/Subfolder1/2002-barcelona-2.jpg Old size: 883737 bytes [optimize] New size: 349506 bytes /Users/blue/Desktop/examples/subfolders/Subfolder1/SubSubfolder/2002-barcelona-2.jpg Old size: 883737 bytes [optimize] New size: 349506 bytes /Users/blue/Desktop/examples/subfolders/Subfolder2/2006-chicago-2.JPG Old size: 702716 bytes [optimize] New size: 264567 bytes /Users/blue/Desktop/examples/subfolders/Subfolder2/rawsubfolder/2000-newmarket-1.jpg Old size: 1120748 bytes [optimize] New size: 484003 bytes /Users/blue/Desktop/examples/subfolders/Subfolder2/rawsubfolder/2002-barcelona-2.jpg Old size: 883737 bytes [optimize] New size: 349506 bytes /Users/blue/Desktop/examples/subfolders/Subfolder3/2015-florida.JPG Old size: 1692084 bytes [optimize+quality+resize] [resized at 0.60] New size: 374958 bytes /Users/blue/Desktop/examples/subfolders/Subfolder3/2015-seattle.JPG Old size: 1572370 bytes [optimize] New size: 449090 bytes Done: 24 files, 15 images, 13 large images # Where shrinkpix saves originals ~/Desktop$ find examples/subfolders -name _shrinkpix-originals -print examples/subfolders/_shrinkpix-originals examples/subfolders/Subfolder1/_shrinkpix-originals examples/subfolders/Subfolder1/SubSubfolder/_shrinkpix-originals examples/subfolders/Subfolder2/_shrinkpix-originals examples/subfolders/Subfolder2/rawsubfolder/_shrinkpix-originals examples/subfolders/Subfolder3/_shrinkpix-originals # # Collect all backup folders in a nested-folder tree, in the root's _shrinkpix-all-originals/ # # List backup folders ~/Desktop$ py3 $C/shrinkpix/collect-unshrunk-images.py examples/subfolders -listonly Collecting /Users/blue/Desktop/examples/subfolders/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/ Collecting /Users/blue/Desktop/examples/subfolders/Subfolder1/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder1 Collecting /Users/blue/Desktop/examples/subfolders/Subfolder1/SubSubfolder/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder1/SubSubfolder Collecting /Users/blue/Desktop/examples/subfolders/Subfolder2/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder2 Collecting /Users/blue/Desktop/examples/subfolders/Subfolder2/rawsubfolder/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder2/rawsubfolder Collecting /Users/blue/Desktop/examples/subfolders/Subfolder3/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder3 Finished: number subfolders moved: 0 # Collect backup folders to tree root folder ~/Desktop$ py3 $C/shrinkpix/collect-unshrunk-images.py examples/subfolders This script collects and removes saved original images; proceed? y Collecting /Users/blue/Desktop/examples/subfolders/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/ Collecting /Users/blue/Desktop/examples/subfolders/Subfolder1/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder1 Collecting /Users/blue/Desktop/examples/subfolders/Subfolder1/SubSubfolder/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder1/SubSubfolder Collecting /Users/blue/Desktop/examples/subfolders/Subfolder2/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder2 Collecting /Users/blue/Desktop/examples/subfolders/Subfolder2/rawsubfolder/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder2/rawsubfolder Collecting /Users/blue/Desktop/examples/subfolders/Subfolder3/_shrinkpix-originals into /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder3 Finished: number subfolders moved: 6 # Originals all in a root (by default) folder now, at root-relative paths ~/Desktop$ find examples/subfolders -name _shrinkpix-originals -print examples/subfolders/_shrinkpix-all-originals/_shrinkpix-originals examples/subfolders/_shrinkpix-all-originals/Subfolder1/_shrinkpix-originals examples/subfolders/_shrinkpix-all-originals/Subfolder1/SubSubfolder/_shrinkpix-originals examples/subfolders/_shrinkpix-all-originals/Subfolder2/_shrinkpix-originals examples/subfolders/_shrinkpix-all-originals/Subfolder2/rawsubfolder/_shrinkpix-originals examples/subfolders/_shrinkpix-all-originals/Subfolder3/_shrinkpix-originals # Collection folder contents ~/Desktop$ ls examples/subfolders/_shrinkpix-all-originals/ Subfolder1 Subfolder2 Subfolder3 _shrinkpix-originals ~/Desktop$ ls examples/subfolders/_shrinkpix-all-originals/Subfolder1 SubSubfolder _shrinkpix-originals ~/Desktop$ ls examples/subfolders/_shrinkpix-all-originals/Subfolder1/_shrinkpix-originals/ 2000-newmarket-1.jpg 2002-barcelona-2.jpg # Nothing left in tree to restore ~/Desktop$ py3 $C/shrinkpix/restore-unshrunk-images.py examples/subfolders -listonly Finished: 0 originals, 0 restored, 0 lingering folders. # Or collect ~/Desktop$ py3 $C/shrinkpix/collect-unshrunk-images.py examples/subfolders -listonly Finished: number subfolders moved: 0 ######################################################################################################## # Restore in collections folder itself and merge back to root => restores originals from collections ######################################################################################################## # # Collapse/remove backup-folder levels (continuing from prior example) # ~/Desktop$ py3 $C/shrinkpix/restore-unshrunk-images.py examples/subfolders/_shrinkpix-all-originals/ This script restores all original images in the folder tree; proceed? y Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/2000-newmarket-1.jpg from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/_shrinkpix-originals/2000-newmarket-1.jpg Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/2002-barcelona-2.jpg from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/_shrinkpix-originals/2002-barcelona-2.jpg Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/2006-chicago-2.JPG from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/_shrinkpix-originals/2006-chicago-2.JPG Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/2015-florida.JPG from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/_shrinkpix-originals/2015-florida.JPG Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/2015-seattle.JPG from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/_shrinkpix-originals/2015-seattle.JPG Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder1/2000-newmarket-1.jpg from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder1/_shrinkpix-originals/2000-newmarket-1.jpg Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder1/2002-barcelona-2.jpg from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder1/_shrinkpix-originals/2002-barcelona-2.jpg Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder1/SubSubfolder/2002-barcelona-2.jpg from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder1/SubSubfolder/_shrinkpix-originals/2002-barcelona-2.jpg Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder2/2006-chicago-2.JPG from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder2/_shrinkpix-originals/2006-chicago-2.JPG Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder2/rawsubfolder/2000-newmarket-1.jpg from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder2/rawsubfolder/_shrinkpix-originals/2000-newmarket-1.jpg Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder2/rawsubfolder/2002-barcelona-2.jpg from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder2/rawsubfolder/_shrinkpix-originals/2002-barcelona-2.jpg Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder3/2015-florida.JPG from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder3/_shrinkpix-originals/2015-florida.JPG Restoring /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder3/2015-seattle.JPG from /Users/blue/Desktop/examples/subfolders/_shrinkpix-all-originals/Subfolder3/_shrinkpix-originals/2015-seattle.JPG Finished: 13 originals, 13 restored, 0 lingering folders. # Backup folders gone, and images to '..' ~/Desktop$ find examples/subfolders/ -name _shrinkpix-originals -print ~/Desktop$ ~/Desktop$ ls examples/subfolders/_shrinkpix-all-originals/ 2000-newmarket-1.jpg 2006-chicago-2.JPG 2015-seattle.JPG Subfolder2 2002-barcelona-2.jpg 2015-florida.JPG Subfolder1 Subfolder3 ~/Desktop$ ls examples/subfolders/_shrinkpix-all-originals/Subfolder1 2000-newmarket-1.jpg 2002-barcelona-2.jpg SubSubfolder # # Merge back to root (trailing slashes matter in source, only) # ~/Desktop$ rsync -avh examples/subfolders/_shrinkpix-all-originals/ examples/subfolders/ building file list ... done ./ 2000-newmarket-1.jpg 2002-barcelona-2.jpg 2006-chicago-2.JPG 2015-florida.JPG 2015-seattle.JPG Subfolder1/ Subfolder1/2000-newmarket-1.jpg Subfolder1/2002-barcelona-2.jpg Subfolder1/SubSubfolder/ Subfolder1/SubSubfolder/2002-barcelona-2.jpg Subfolder2/ Subfolder2/2006-chicago-2.JPG Subfolder2/rawsubfolder/ Subfolder2/rawsubfolder/2000-newmarket-1.jpg Subfolder2/rawsubfolder/2002-barcelona-2.jpg Subfolder3/ Subfolder3/2015-florida.JPG Subfolder3/2015-seattle.JPG sent 14.83M bytes received 342 bytes 29.67M bytes/sec total size is 14.83M speedup is 1.00 # # Verify: the only diff left is the all-backups folder # ~/Desktop$ py3 $C/mergeall/diffall.py examples/subfolders/ examples_start/subfolders/ -skipcruft | tail -n 6 Runtime hrs:mins:secs = 0:0:0.04 Dirs checked 12, Files checked: 49, Files skipped: 0 System metadata (cruft) files were skipped Diffs found: 1 - items UNIQUE at [examples/subfolders/] - [examples_start/subfolders/] End of report. # Not removed automatically - it's your backups ~/Desktop$ py3 $C/mergeall/diffall.py examples/subfolders/ examples_start/subfolders/ -skipcruft | grep --context '*UNIQUE' -------------------- Comparing examples/subfolders/ to examples_start/subfolders/ *UNIQUE items in examples/subfolders/: ... _shrinkpix-all-originals Comparing contents # Manually move or remove backups tree to start backups from scratch, and avoid duplicates and images/folder mixes ~/Desktop$ rm -rf examples/subfolders/_shrinkpix-all-originals/ # After removing the all-backups folder, the root is back to its pre-shrink state (if you want it to be) ~/Desktop$ py3 $C/mergeall/diffall.py examples/subfolders/ examples_start/subfolders/ -skipcruft | tail -n 6 ================================================================================ Runtime hrs:mins:secs = 0:0:0.02 Dirs checked 12, Files checked: 49, Files skipped: 0 System metadata (cruft) files were skipped No diffs found. End of report. # # Next: see the 'part2' example file for additional and more advanced collector use cases #