Even though I am a strong advocate of learning as much as you can about using the command line, I admit I like my GUI a lot (and Compiz of course
). The CLI can be really useful for repairing your system or just doing some task that takes far more clicks in the graphical interface. For instance, in Debian it is much easier to open the console and write apt-get install abiword than to wait for Synaptic to load, search for Abiword, click the check-box, confirm the install and close the front end.
Sometimes you will find yourself in a situation when you don’t want the app to stop working when X is restarted or broken. Sometimes you just want a very light application, and nothing is faster than a text interface. For example, when I install the new nvidia drivers on Debian it sometimes breaks my system - but I want to listen to a podcast while doing the repair work. If I used Banshee, the thing would stop playing when I restarted X. By opening a virtual terminal, by pressing say Ctrl+Alt+F4, I fire up sox and play the mp3 in there. Works great and X does not interfere with the playback!
So what can new users do with the command-line while enjoying the GUI? There is a multitude of applications that do the same jobs as their graphical equivalents, but are not dependent on X. Using them is just a matter of learning a few simple commands. You’ll be up and running in no time.
Also, check out CLI-apps.org where you can find lots more!
1) rtorrent is a powerful CLI torrent client. While the interface itself is very “empty”, it can do most of the things other full-featured torrent clients do. Find the torrent file by pressing Return (or Enter) and navigating to your torretn file. rtorrent.rc configuration file, you can normally find an example in /usr/share/doc/rtorrent/examples/rtorrent.rc

Even though the program will warn you there is no such file on first start, you may use this exampel configuration file to setup rtorrent for maximum speed, IP masking etc.
You can find out more about configuring it and a few mroe tips and screens here. An alternative to rtorrent is a similar program called (Enhanced) ctorrent.
2) w3m is a great little web browser for the console. It features tables, tabs, frames, SSL connections, color and even inline images on suitable terminals. When you are not in X, w3m becomes a great way of searching Google and forums when you are troubleshooting. The navigation is very easy when you get used to it and w3m renders pages surprisingly well, even Gmail. Emacs uses w3m to display pages in the text editor itself.

Note: w3m’s homepage hasn’t been updated, so I’m not linking it. Just Google w3m to find otu more about it. Also, every distribution should have w3m either installed or in the primary repos.
3) bashpodder As a podcast listener, I must not forget to add bashpodder to my list. It is an extremely simple and robust command-line podcatching client written by Linc from the Linux Link Tech Show podcast. While the setup requires you to do some manual work, the program itself actually uses wget behind the scenes and is the perfect client for older computers or people who just like it simple - you only need wget, sed and bash.
There are GUIs available for bashpodder, too (like the depicted KPodder).
4) finch is probably already on your computer, if you installed Pidgin. This surprisingly advanced CLI multi-protocol instant messaging client enables you to use most of the features you get in Pidgin, without the need of a graphical interface. The UI is pretty simple, but at the same time easy to understand. Just run ‘finch’ in the shell and try it out, if you already have Pidgin on your machine.

5) Mutt and 6) Alpine are email clients for the command-line. They are the ‘mammoths’ of email, as they have existed for almost about ten years now. Bot have their advantages and disadvantages (for instance, Newsgroups support is much better in Alpine). Personally I would recommend using Gmail in w3m if you already want to have email in the CLI, though many people use text-based email clients, especially Alpine, which is a descendant of Pine.

Read more about these two mail clients here, where the author is much more knowledgeable about them than me. Even though it is a ghastly translation of a German article, I believe you won’t have any trouble understanding it.
Do you still use any CLI apps? What do you think about CLI applications? Tell us in the comments.





![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=abadc79f-4060-4ac3-96b9-99d5726cc9a1)

November 29th, 2008 at 14:08
There’s Irssi as well (I’m really surprised that wasn’t mentioned). I also like a few configuration tools that are command-line based - Ceni, the network configuration utility used in Sidux, is really lightweigh but easy to use.
There’s also aptitude, vim, and tin.
November 29th, 2008 at 14:23
Well, don’t be surprised. That’s what the comments section is for. I only tried to recommend stuff I know something about. So feel free to talk about YOUR favorite apps
November 29th, 2008 at 19:25
Ther are lots of great ncurses apps: ncdu - a disk usage tool which is easily used in the console or invoked from your file manager with a script or custom action. Much faster than baobab/filelight and more functional too. cbm - simple bandwidth monitor. saidar - system info/monitor. aria2 - extremely capable download tool, handles regular http/ftp with added capability of multi-threading, bittorrent, metalink, simultaneous download from multiple types of sources i.e. can download file from http and via torrent and be able to seed everything it accumulates as it does it. Let’s not forget midnight commander, about as good a file manager as you can find on the console. How about moc (music on console), about the best music player I’ve used gui/console/gnu+linux/windows/anywhere!
btw rtorrent cannot mask IP address, the encryption in bittorrent is principally to disguise/obfuscate the protocol in a bid to beat ISP bandwidth shaping. I can promise you thet however you use rtorrent your IP address is fully visible. And the easy way to load torrent files is to drop them into a pre-configured watch folder that rtorrent is polling. http://libtorrent.rakshasa.no/wiki/RTorrentCommonTasks is a great place to find well explained short examples of useful rtorrent options/capabilities.
my favourite console www browser is elinks - tabbed browsing, bookmark management, download management…it has everything except images.
another feedreader - newsbeuter. It has a very good interface, easy controls and an integrated podcast downloader called podbeuter.
sshfs - mount remote folders/filesystems in your home directory securely and without the hassle of samba or nfs.
htop - very good system monitor in the style of gnome system monitor but in the console.
Last on my list and definitely not least is screen, which makes working in the console a real pleasure. There is screenie for people who can’t remember three key combos
November 29th, 2008 at 19:32
and there’s more!
nano - I haven’t used vim for a long time because nano is so easy.
smbc - twin pane samba file manager. This is easy!
dict and dictd - no more waiting for slow free online dictionary searches, have dictionaries, thesaurus etc available instantly in your terminal.
tilda - instant drop down terminal for gnome/gtk based desktops, like yakuake but I think more configurable.
November 29th, 2008 at 20:12
I echo your recommendation of Alpine. I used Pine for some time.
While I usually use Gajim for Jabber, I was impressed by Mcabber:
http://imagenes.sftcdn.net/es/scrn/51000/51153/3_mcabber.jpg.
I have also used Mp3blaster:
http://syntaktisk.dk/grphcs/nox/mp3blaster.png
While I generally think calendar applications suck, I found Calcurse useful:
http://syntaktisk.dk/grphcs/nox/calcurse.png
I used to use the hierarchical notebook(hnb):
http://syntaktisk.dk/grphcs/nox/hnb.png
November 29th, 2008 at 20:20
There is a distro called inx which is packs lot of cool command line apps.
1+ for elinks and rtorrent
November 29th, 2008 at 20:24
Raggle is a great RSS reader for the console
November 29th, 2008 at 20:41
iotop - shows processes doing i/o in ‘top’ format.
http://guichaz.free.fr/iotop/
axel - wget on steroids. opens multiple connections, so avoids throttling on remote ends. does not support resuming (i.e., no ‘wget -c’ equivalent switch).
http://axel.klik.atekon.de/
newsbeuter - console based RSS reader. allows saving of individual posts. supports killfiles.
http://www.newsbeuter.org/
November 29th, 2008 at 21:02
screen + mutt + lynx + irssi + mc
Gotta have screen
November 29th, 2008 at 22:38
I’ve gathered a number of popular console-based apps here:
http://tim.thechases.com/bvi/console.html
and broken them down by category of usage. The original catalog was developed for blind Linux users (http://leb.net/blinux/blinux-list.html) list, and two of the applications (the time-tracker and the mencal2) are some of my own creations.
November 30th, 2008 at 00:17
i will try one of these ,
thnx about topic
November 30th, 2008 at 06:24
0verkill:
http://artax.karlin.mff.cuni.cz/~brain/0verkill/
November 30th, 2008 at 12:28
great compilation, but don’t forget to include the pico or vi editor, these are the editors most of the linux command line lovers can’t live without
—————————–
http://www.seoroot.com/blog
November 30th, 2008 at 12:59
[...] http://www.internetling.com/2008/11/29/cool-command-line-apps-for-gnulinux [...]
December 1st, 2008 at 12:40
Oh, forgot to add Snownews:
http://kiza.kcore.de/software/snownews/
A very nice RSS reader I used on the BSDs.
December 1st, 2008 at 18:00
Ahem… When it comes to editors / IDEs, GNU Emacs is my choice:
http://www.gnu.org/software/emacs/
Has a GTK version, Windows keybindings for newbies, incremental search, search and replace with regular expressions, file search and replace,… the whole shebang.
But, please, no Emacs / vi comparisons here. It really comes down to personal choice. Just try them both. See which one you prefer.
December 1st, 2008 at 18:08
Ok, sorry, the “GTK version” bit is not relevant for this post.
But to say “these are the editors most of the linux command line lovers can’t live without” without mentioning “Emacs” is a sacrilege.
Ok, and now for something completely different…
December 1st, 2008 at 19:04
oh! you forgot fdupes used to find duplicate files in binary level,it’s great!
December 1st, 2008 at 19:13
Great list.. I often install server versions of Linux without X, so good command line/console applications are really useful.
Thanks, Gary
December 1st, 2008 at 19:50
Here’s another one I use in preference to any graphical app: ripit http://www.suwald.com/ripit/ripit.html
“The program will do the following without user intervention:
# gets the Audio CD Album/Artist/Tracks information from CDDB
# rips the Audio CD Tracks
# encodes to flac, mp3 or ogg
# id3 tags encoded songs
# Creates an playlist (m3u) file
# Can generate a toc (cue) sheet for nice DAO burning
# Can prepare and send a CDDB submission and save it locally
# Can extract hidden songs and split ghost songs
# May create md5sum files for all tracks
# Run several encoder processes at the same time and same run
”
I love the fact that it can encode simultaneously to multiple formats (you can set nice value and number of threads) and especially that each format gets written to a different folder if preferred. I just issue the command ripit in the console and a little while later I have an appropriately named folder of named, tagged flacs with .m3u and another of oggs with .m3u. It has a few other tricks too, you can distribute the ripped wavs via ssh to be encoded elsewhere. One of the things that surprised me most is that this is probably the *easiest* CD ripper I’ve ever used as well as being the most usefully configurable.
December 2nd, 2008 at 06:33
If you haven’t learned “screen” - learn it… Learn how to make new screens and copy and paste; it will change the way you compute. Figure out how to use ` or ~ instead of CTRL-A and see how much faster you can do things…
I also find elinks better than w3m or lynx; primarily because my mouse works like a mouse - I can scroll around, and click on links, even through a screen session. To halt this action in Putty, just hold down Shift.
By taking the music player one more layer away and making it a daemon (mpd), you can gain even more control over your audio. ncmpc is a great ncurses based front-end for mpd.
I tried finch, but found it left way to many artifacts on my screen. Centerim did the trick for a while, but the protocol support doesn’t seem 100% Then I found irssi and BitlBee and never looked back. BitlBee is more a daemon than command-line tool, but it relates - by running as an IRC server and connecting to all the major chat networks, it allows you to connect via irssi (or any other IRC client) and communicate with all your IM buddies. The best thing - your server stays online even when you’re moving around, so you’ll never miss a message.
I recommend searching through your package manager for the key phrases “text mode” “ncurses” “cli” and trying things out - and reading lots of articles
Great comments!
December 2nd, 2008 at 14:31
I use and highly recommend tcptrack for monitoring TCP connections on the network.
tcptrack displays the status of TCP connections that it sees on a given network interface. tcptrack monitors their state and displays information such as state, source/destination addresses and bandwidth usage in a sorted, updated list very much like the top command.
It’s very useful when you want to find out which connection is hogging all the bandwidth, or want to find out how many connections are there with a specific remote host.
Site @ http://www.rhythm.cx/~steve/devel/tcptrack/
December 5th, 2008 at 00:28
Well I definitely use mplayer for all my Music/Video/DVD/Radio/Streaming activities , This Program can do miracles !! I use emacs -nw as an IDE , As a hobbyist programmer i spend 90 % of my computer non internet time at the CLI , for the mere fact that it is A LOT faster/ less resource eater Than any GUIs!
December 14th, 2008 at 21:33
rTorrent looks pretty sweet.