Quick and Easy Sysinternals Synchronization
If you've ever touched a Microsoft Windows box, you are probably aware of Sysinternals, a large suite of tools co-developed by Mark Russinovich before he joined the company in 2006. There is a staggering surfeit of utilities that the Sysinternals team created, everything from simple command-line tools for securely deleting a file to profoundly powerful GUI diagnostic software like Process Explorer.
These tools are periodically updated from time to time, and it's handy to have the latest and the greatest versions because they are always adding new features and fixing esoteric bugs in several of these programs. You can hunt and peck your way through the site looking for updates, but here's a quicker way to stay up-to-date. Subscribe to Sysinternals Site Discussion. They have an RSS feed. When the blog tells you there's an update, do the following:
- Fetch and install wget for Windows if you don't already have it.
- wget -Nqr -nd -l 1 -P C:\sysinternals -R chm,html http://live.sysinternals.com/Tools
- Put C:\sysinternals in your %PATH%.
When the site posts updated utilities every month or so, just run the wget command again. It should skip the binaries that haven't been updated and save everybody a little bandwidth. Be cautious if you happen to be using any of these tools, since wget can't overwrite a file if it's open.
I used to run robocopy to sync these files, but robocopy has a terrible time doing accurate timestamping with the \\live.sysinternals.com\Tools share. wget is much more intelligent when handling the HTTP Last-Modified header. I presume this is because the Windows fileshare has FAT32-style 2-second mtime granularity. I haven't bothered to verify this.
For the curious, the long-format version of the wget argument-list is thus:
wget --timestamping --quiet --recursive --no-directories --level=1 --directory-prefix=C:\sysinternals --reject=chm,html http://live.sysinternals.com/Tools
No comments:
Post a Comment