Automatically decompress all files on a Mac disk?
June 30, 2006 12:58 PM   Subscribe

Is there a way to have ZIP files automatically decompress when they are copied to a remote Mac server via FTP?

I'm sending files from my Mac here in Atlanta to a Mac OS X-based fileserver on the west coast on a daily basis. I want to compress my files so they won't take as long to send, but I don't want someone to have to go in and manually decompress them every time I send them. Is there a way to have incoming ZIP files automatically expand on the fileserver once the transfer is complete? I thinking of something like the old "watch folder" function in StuffIt, but I'm not sure whether that would work on a disk-wide basis. If there is a way to transparently compress them before sending, too, so I don't have to worry about it, that would be nice as well.
I can request to have software installed and configured on the fileserver.
posted by designbot to Computers & Internet (9 answers total)
Have you looked into Folder Actions?
posted by smackfu at 1:01 PM on June 30, 2006

You should use ssh/scp instead of ftp. In addition to being secure (ftp sends passwords in plain text), you can turn on compression to transparently compress all files during sending, so you don't have to worry about zipping/unzipping.
posted by jellicle at 1:11 PM on June 30, 2006

Can you use sftp instead of ftp? In that case, you should be able to specify to automatically use compression for the data that is sent (at least with the command line client). (Sftp is related to ssh/scp as mentioned by jellicle. If the server supports ssh logins sftp or scp should work automatically as well)

I only now about linux/windows clients, but a quick google search found that the Fetch sftp/ftp client for Mac OS X by default automatically expands stuffit archives, which, apart from not being zip-archives, sounds like what you are asking for. See question 17 here: Fetch 5.1 FAQ
posted by rpn at 1:16 PM on June 30, 2006

rsync -avz local-dir/ remote-host:/remote-dir compresses and sends to the remote-host only as much of the files in local-dir as is needed to make remote-dir the same - if it already has some of them they won't be sent, and if it already has parts of them only the new parts will be sent.
posted by nicwolff at 1:34 PM on June 30, 2006

StuffIt Expander can be configured to monitor a particular folder, and un-compress anything that appears in it, and optionally delete the original archive.
posted by Mwongozi at 1:38 PM on June 30, 2006

Write a shell/python/perl script that decompresses everything and deletes the archive after verifying that it all went okay. Then just schedule it as a cron job.
posted by crypticgeek at 5:37 PM on June 30, 2006

Vandyke's VShell server is an implementation of SSH that also has trigger based events, such as when a file is received via sftp. You can use those events to do whatever you want, such as unzip the file that arrived. Probably out of your league, but there might be a free competitor out there that does similar.
posted by furtive at 6:20 PM on June 30, 2006

StuffIt Expander can be configured to monitor a particular folder, and un-compress anything that appears in it, and optionally delete the original archive.

No. Keep StuffIt products the hell away from a server, especially any that perform tasks automatically/on a regular basis.
posted by Mikey-San at 6:41 PM on June 30, 2006

*rolls eyes* StuffIt Expander is just an app and the worst it might do is quit unexpectedly. It probably won't, but if it does, you can avoid that by setting up a cron task that runs every minute to re-launch it.

(The whole StuffIt Deluxe package, which you do NOT need, does install a kernel extension or something, or used to, and yeah, you'd probably want to avoid that on a server just in case.)
posted by kindall at 9:41 PM on June 30, 2006

« Older Tips and tricks for travel by train in Italy and...   |   Where can I find movie stills to publish in a... Newer »
This thread is closed to new comments.