| 1 | #!/bin/sh |
| 2 | |
| 3 | # make sure the file/folder exists and .temp doesn't exist |
| 4 | if [ ! -f $@ ]; then |
| 5 | echo "file '$@' not found" |
| 6 | exit 1 |
| 7 | fi |
| 8 | |
| 9 | echo "setting up" |
| 10 | mkdir .temp$$ |
| 11 | cp -r $@ .temp$$ |
| 12 | cd .temp$$ |
| 13 | F="file" |
| 14 | |
| 15 | echo "tar" |
| 16 | tar -cf ${F}.tar $@ |
| 17 | F="${F}.tar" |
| 18 | |
| 19 | echo "gz" |
| 20 | gzip -9 ${F} |
| 21 | F="${F}.gz" |
| 22 | |
| 23 | echo "xz" |
| 24 | xz -ze9T$(nproc) ${F} |
| 25 | F="${F}.xz" |
| 26 | |
| 27 | echo "lzma" |
| 28 | lzma -ze9T$(nproc) ${F} |
| 29 | F="${F}.lzma" |
| 30 | |
| 31 | echo "bz2" |
| 32 | bzip2 -z9 ${F} |
| 33 | F="${F}.bz2" |
| 34 | |
| 35 | echo "lz" |
| 36 | lzip -9 ${F} |
| 37 | F="${F}.lz" |
| 38 | |
| 39 | echo "cpio" |
| 40 | echo ${F} | cpio --quiet -oF ${F}.cpio |
| 41 | F="${F}.cpio" |
| 42 | |
| 43 | echo "zst" |
| 44 | zstd -T$(nproc) --ultra -q -22 ${F} |
| 45 | F="${F}.zst" |
| 46 | |
| 47 | echo "lz4" |
| 48 | lz4 -q -z -12 --rm ${F} |
| 49 | F="${F}.lz4" |
| 50 | |
| 51 | # not doing rar because there's no free software to create them. |
| 52 | # .zip wasn't in the original so i'm doing that instead |
| 53 | echo "zip" |
| 54 | zip -9 -q ${F}.zip ${F} |
| 55 | F="${F}.zip" |
| 56 | |
| 57 | echo "7z" |
| 58 | 7z a -t7z -mx9 ${F}.7z ${F} > /dev/null # 7zip has no quiet option >:( |
| 59 | F="${F}.7z" |
| 60 | |
| 61 | echo "bz3" |
| 62 | bzip3 -z --rm -j$(nproc) ${F} |
| 63 | F="${F}.bz3" |
| 64 | |
| 65 | echo "br" |
| 66 | brotli -j -q 11 ${F} |
| 67 | F="${F}.br" |
| 68 | |
| 69 | echo "hex" |
| 70 | xxd -ps ${F} > ${F}.hex |
| 71 | F="${F}.hex" |
| 72 | |
| 73 | echo "swcr" |
| 74 | cat ${F} | sweecrypt encrypt > ${F}.swcr |
| 75 | F="${F}.swcr" |
| 76 | |
| 77 | echo "b64" |
| 78 | base64 ${F} > ${F}.b64 |
| 79 | F="${F}.b64" |
| 80 | |
| 81 | echo "b32" |
| 82 | base32 ${F} > ${F}.b32 |
| 83 | F="${F}.b32" |
| 84 | |
| 85 | echo "lzo" |
| 86 | lzop -9 -q ${F} |
| 87 | F="${F}.lzo" |
| 88 | |
| 89 | echo "squashfs" |
| 90 | mksquashfs ${F} ${F}.squashfs -quiet -no-progress |
| 91 | F="${F}.squashfs" |
| 92 | |
| 93 | echo "cleaning up" |
| 94 | mv ${F} .. |
| 95 | cd .. |
| 96 | rm -r .temp$$ |
| 97 | |
| 98 | echo "done" |
| 99 |
user333 / compress.sh
Last active 3 months ago
Revision 7afe1bb58ea7107e45215725a4396474cf5f7f97