Many people say we’re now living in a "post-PC world". The desktop is dead, they claim, or at least on the way out, while touch is the future. And all this might suggest that command line tools are entirely irrelevant, and best forgotten.
If you need to automate PC tasks, though, for yourself or others, then a little command line knowledge can still save you a vast amount of time. Especially if you extend the regular DOS commands with the cross-platform Swiss File Knife.
We downloaded the Windows version of program (it’s also available for Mac and Linux). It arrived as a single executable, no installation required, so we just copied it into a folder on our path.
To use Swiss Family Knife you must enter its name, followed by whatever command and switches you’d like to use. For instance, entering sfk170 list mydir !.bak !.tmp.txt will list all files within mydir, except .bak and .tmp.txt files.
There are also commands to search for files by content, or name. It’s able to create or delete directory trees. And you get a lengthy list of text and file processing options: LF <> CRLF, tab <> space, hex <> binary, hex <> dec, insert string, replace string, sort string, split file, join file, more.
This would be useful in itself, but Swiss File Knife does a whole lot more. The program also includes commands to synchronise a folder tree, find duplicate files, cut video and binary files, create MD5 hashes, send UDP or HTTP requests, download HTTP files, even run instant FTP and HTTP servers.
Most of these commands deliver far more than you’d expect. The List command doesn’t just list files in a directory tree, for example: it also supports a host of archive formats. And it’s enormously flexible, with more than 35 switches, which can themselves be combined in many different ways, and have their output passed on to other Swiss File Knife commands.
There’s also plenty of scripting support, with tools to get user input, run sequences of Swiss File Knife commands, run commands on every file in a folder, run commands in a loop, and more.
Perhaps most surprising of all, though, Swiss File Knife isn’t too difficult to learn. There’s a lot to explore, but the syntax of each command is relatively straightforward. When listing files, for example, there’s no “-n -l -p” garbage: instead you’ll use plain English switches like -time, -hidden, -sort, -minsize, -maxsize and so on. You can probably guess what they do already. And if you can’t, a truly excellent PowerShell-like local Help system explains all.
Swiss File Knife is a great package, then, with something to offer just about everyone. You can use it immediately to replace other small tools (an instant web server, perhaps). You might string a few commands together to automate some useful task, such as processing text files. Or you could learn the whole package, and make it your scripting tool of choice. Whatever your decision, it’s going to save you plenty of time: go grab a copy immediately.