The sed(1) stream editor is one of the most powerful tools from the classic Unix tool box. It is a close cousin to the ed(1) command line editor and a descendant of the ex(1) editor, the command line mode of vi(1). In this article I'll show …
read moreOther articles
Checking Whether a Process Exists
On Linux/Unix systems, there's occasionally the need to check whether a process is running. Some people use it for simple status checks or when building their own lifecycle scripts for startup and shutdown. I don't think it's a particularly good practice these days because all of this can be …
read moreRemote-Controlling a Sonos Device Using Python
I couple of months ago I bought a Sonos Play:1, a pretty cool wireless speaker that comes with free controller apps for major platforms (Android, Windows etc.). To give the speaker access to my music collection, I hooked up a USB drive to my home router and shared the …
read moreQuick Tip #6: Triggering Actions on File Close
Sometimes it's useful to trigger an action after a file is closed. Suppose you started a lengthy download on your notebook and you want to suspend it as soon as the download is done. There are several ways to achieve this.
If you started the download using a web browser …
read moreBuilding a Web-Based Java API Search
From time to time I play with web technologies to keep up with recent developments. While I know my network protocols pretty well, I'm not a frontend developer so I'm pretty useless when it comes to JavaScript or CSS. I believe in learning by doing, so I decided to build …
read moreBourne Shell Parameter Expansion
Classic Bourne Shell has a handy feature that many people don't seem to know: Parameter Expansion. Stephen Bourne describes it in An Introduction to the UNIX Shell, which is part of the original Unix V7 manuals from 1978. Among other things, parameter expansion provides a notation for making sure that …
read moreScripts That Just Don't Work
Sometimes people ask for my help when their shell scripts don't work. I've seen all kinds of problems, ranging from trivial to really, really weird. The one I'm describing in this article is definitely from the weird category, but I've seen it quite a few times.
The story goes like …
read moreDelicious shutting down?
Yesterday, I was quite surprised when I head rumors that Delicious, my favorite link sharing site, is shutting down. According to their blog, they are looking for a way to continue the service outside of Yahoo, but it's better to be safe than sorry and backup all bookmarks.
I was …
read moreQuick Tip #4: Sorting Large Files
With traditional Unix sort(1), the size of the files you can sort is limited by the amount of available main memory. As soon as the file gets larger and your system has to swap, performance degrades significantly. Even GNU sort which uses temporary files to get around this limitation …
read more