Usage
Type squish on its own and it asks for everything. Add a folder, files or options when you already know what you want.
#The guided way
squish
- Choose a folder. Drag it into the Terminal window and press Enter. On a Mac you can also press Enter straight away to pick it in Finder.
- squish counts what it found, for example 6 videos · 42 images. If there are several kinds, it asks whether to compress everything or only one kind.
- Answer a few questions per kind with the arrow keys and Enter. The first answer is always the recommended one, so pressing Enter repeatedly is a good choice.
- Check the plan (output folder and settings) and choose Start.
- Watch it work. Each file shows a progress bar, then its size before and after.
At the end you get the total saved and the folder where the results are. On a Mac that folder opens by itself.
#Examples
squish ~/Movies/Trip # one folder
squish clip.mov photo.heic # some files
squish ~/Desktop ~/Downloads # several folders at once
squish -r ~/Pictures # include every subfolder
squish -y ~/Movies/Trip # recommended settings, no questions
squish -t video -s 25 ~/Clips # every video under 25 MB
squish -t image,pdf ~/Documents # only images and PDFs
squish -o ~/Desktop/small ~/Scans # results in another folder
#Options
| Option | What it does |
|---|---|
-y, --yes | Use the recommended settings and don't ask anything. Missing tools are installed with the default answer (yes). |
-r, --recursive | Include subfolders. The folder structure is kept in the output. |
-o, --output DIR | Write the results in DIR instead of a compressed folder next to the originals. The folder is created if needed. |
-t, --type LIST | Only these kinds, separated by commas: video, image, pdf, audio. |
-s, --size MB | Videos: make each one fit under this size, in MB (25, 9.5, 25MB all work). See Target size. |
--update | Update squish to the latest version. |
--uninstall | Remove squish (asks first). |
-h, --help | Show the help. |
-V, --version | Show the version. |
A path starting with a dash can be passed after --: squish -- -weird-name.mov.
#Recommended settings
With -y, or when you just press Enter, squish uses:
- Videos: Balanced, H.264 MP4, original resolution, sound kept, normal speed.
- Images: same format, Balanced, original size.
- PDFs: Balanced (150 dpi images).
- Audio: MP3, Balanced (160 kbps).
#Where the results go
By default, into a folder called compressed inside the folder you chose:
Trip/
├── beach.mov ← untouched
├── sunset.heic ← untouched
└── compressed/
├── beach.mp4
└── sunset.heic
- Videos always come out as
.mp4. Other files keep their name, with a new extension if the format changed. - Files are never written over. If two results would get the same name, the second one gets
-2, then-3. - Results keep the date of their original, so your photo library stays in order.
- Hidden files and existing
compressedfolders are ignored.
#Stop and resume
Press Ctrl C at any time: the file in progress is cleaned up, finished files stay. Run the same command again and squish skips everything already done.
#Files that don't get smaller
Some files are already well compressed. When the result would not be smaller, squish copies the original into the output folder instead, so the folder is complete. The summary counts them as already well compressed.
