Journal Articles

CVu Journal Vol 14, #1 - Feb 2002
Browse in : All > Journals > CVu > 141 (8)

Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.

Title: Members' Experiences

Author: Administrator

Date: 03 February 2002 13:15:49 +00:00 or Sun, 03 February 2002 13:15:49 +00:00

Summary: 

My Top 25 Unix/Linux Utilities

Body: 

I will not provide URLs because it takes too much space; search the Web or check your Linux distribution. The ordering here is only approximate; I wasn't sure where to put some of them.

#25: watchdog.

Together with the Linux kernel module "software watchdog", this can cause your computer to automatically reboot in the rare event of a serious crash. (If it's not a rare event, check your RAM.) If you leave your system running unattended then it's probably a good idea.

#24: blinkd.

Blink the LED's on your keyboard. It can be useful if you set it to do so when you have mail (try "mailleds" also, although at the time of writing I couldn't get it to work on my setup). You can then tell at a glance whether or not you have mail, without having to switch the monitor on, and it's less intrusive than audio alarms.

#23: swapd.

Automatically adds more swap space if you're running out. Can be a life-saver sometimes.

#22: squid.

Run a local proxy server for your Web traffic, point all your browsers to localhost, and then you can control which upstream proxies you will use from one place (and squid is good at automatically switching to backups or going directly). It's also useful when you've viewed a page in one browser and want to try it in another - it will already be in the cache.

#21: debfoster.

On Debian, this is a good command-line wrapper to the package management tools; it knows the difference between packages you actually want and packages that are just there to support others, and as you change and upgrade it can make sure the old stuff doesn't build up. (If you're on Debian, I also suggest you use "reportbug" to report bugs, not "bug", because the former automatically downloads the existing bug reports to show you.)

#20: mhonarc.

Generate a load of HTML from your mail archives. Can be useful if you want to quickly add a "mailing list archive" to a website.

#19: tcs.

Translates between various character sets. Until everything supports Unicode, this can be useful if you deal with just about any language other than English (particularly Oriental languages).

#18: vnc.

Log in to your graphical desktop from across the network using any Java-enabled Web browser. I use "mindbright" to do it over a secure connection. And instead of leaving the server running, I get the "inetd" superserver to listen on that port, and when someone connects it runs a script that launches the server (if it's not already running), puts a nice desktop on it, and uses "netcat" to pass on the connection to it. When the user exits the window manager, my script closes down the server. This means that lots of users can have the ability to log in over VNC and you don't have to leave all those server processes running all the time.

#17: wordnet.

It's not the best dictionary around but you can quickly get a definition from the command line, which is quite handy.

#16: fetchmail.

Get your mail from a POP or IMAP server and deliver it to a local mail system (like Exim) so that it goes in your Unix mailbox; this means you have more email programs to choose from. There's also a script to fetch mail from a Hotmail account, called "gotmail".

#15: flip.

DOS/Windows and Unix have different ways of ending a line in a text file, which can get annoying. It's useful to have one command to convert between them.

#14: lrzsz.

If you have a palmtop with a terminal emulator on it, you can log in via the serial port, and with lrzsz you can transfer files (and make backup scripts) too. Palmtops don't tend to come with Linux support so this can be useful.

#13: ntpdate.

Synchronises your clock to an atomic time server across the Internet. Install this and you should never have to worry about setting your computer's clock again.

#12: websec.

Run your own "netmind" service, and you decide how often it runs. Can tell you exactly what has changed too.

#11: wget.

Download a file from the Web or FTP from the command line. Saves having to use a browser and very useful for automated scripts.

#10: cron.

Run commands in the middle of the night; automate all kinds of regular housekeeping tasks (backups, indexing, updating, etc); make sure certain programs are always running; send yourself reminders at various hours; wake up to a CD (try dcd for this); etc. There's an improved version called fcron that is good if you don't have your computer on all the time.

#9: ssh.

I'm listing this because I was amazed when an ACCU member wrote to me saying he hadn't come across it. If you're still using telnet to issue commands to remote machines, investigate ssh now - not only do you get an encrypted connection but also it becomes much easier to run X-windows programs remotely and to transfer files. You can forward arbitrary other connections through your SSH connection too.

#8: make.

You tell it which files in your project depend on which other files, and what commands need to be run if those other files are changed. Then compiling, running, testing, and so on is a matter of typing one "make" command, which automatically works out what does and does not need to be done, and usually runs much faster than a script to do everything.

#7: diff.

Compare two files and print the differences between them; it can clearly mark which lines have been removed and which have been added. There's also a "patch" utility that takes the output from "diff" and applies it to the first file to get the second; if you want to participate in the open-source community then you'll want to know about patch.

#6: strings.

This will go through any binary file and print out anything it finds that seems to be an ASCII string. Very useful if you want to get a quick idea of what's in a file without having to find the right application. Think of it as a "universal file viewer."

#5: sed.

Do complex search/replace operations on text while it's being piped from one program to another. If you're fluent at writing the right cryptic expressions, it can be surprisingly useful.

#4: grep.

Search through many files, or filter a program's output. If you don't already know about this command, it's worth reading up.

#3: less.

It's a "pager" (like "more") but with more features, like the ability to search backwards and forwards through text.

#2: bash.

Most distributions are sensible enough to make this the default command shell, but there are still some people who seem to be unaware of it so I'm listing it here. I find the syntax more intuitive than that of other command shells, and it's quite powerful.

And the winner: emacs. If you like customising things and writing lots of macros then this is the editor for you. It's also a work environment that lets you read mail and news, browse the system documentation, and do all sorts of other things. It takes effort to master but it's worth it.

Notes: 

More fields may be available via dynamicdata ..