Category:List of Linux Programmes

From Christoph's Personal Wiki
Jump to: navigation, search

This is a list of Linux programmes. I use many of these programmes on a daily basis. However, I have not mastered all of these just yet. I will provide links to individual programmes for further information, tutorials, and examples.

Some of these programs are standard utilities that will be found on any Unix or Unix-like operating system; indeed a system without such basic components as ls or sh could scarcely be described as truly Unix-like. Others are more special-purpose and may not be installed by default. Finally, some items on this list are simply separate applications which happen to have been written for Unix.

System software

General user

  • dirname – Strip non–directory suffixes from a path
  • dd – Convert and copy a file (Disk Dump)
  • echo – Print to standard output
  • env – Show environment variables; run a program with altered environment variables
  • nohup – Run a command with immunity to hangups outputting to non–tty
  • file (or stat) – Determine the type of a file
  • strip – Discard symbols from object files
  • uptime – Print how long the system has been running
  • sh – The Bourne shell, the standard Unix shell

System Management

  • fuser – Identify processes by files or sockets
  • newgrp (or sg) – Log in to a new group
  • pathchk – Check the validity/portability of filenames
  • logger – Make entries in the system log

Kernel specific

  • ipcs – Provide information on IPC facilities
  • ipcrm – Remove a message queue, semaphore set or shared memory id
  • date – Print or set the system date and/or time
  • uname – Print assorted system statistics
  • dmesg – Print the kernel message buffer

Processes and tasks management

  • nice – Alter priorities for processes
  • time – Time a command
  • top – Produce a dynamic list of all resident processes
  • wait – Wait for the specified process
  • renice – Alter the priorities of an already running process
  • chroot – Change the system root directory for all child processes
  • timex – Time process shell execution, measure process data and system activity
  • kill – Send a signal to process, or terminate a process (by PID)
  • killall – Terminate all processes (in Linux, it's kill by name)
  • crontab – Crontab file editor
  • at – Single–time command scheduler
  • cron – Periodic command scheduler
  • daemonic – Interface to daemon init scripts
  • sleep – Delay for specified time
  • pgrep – Find PIDs of processes by name
  • pidof – Linux equivalent of pgrep
  • pkill – Send a signal to process, or terminate a process (by name). Equivalent to Linux killall
  • ps – Report process status
  • anacron – Periodic command scheduler

User management and support

  • su – Start a new process (defaults to shell) as a different user (defaults to root)
  • logname – Print user's login name
  • passwd – User and group entries for daemons
  • write – Send a message to another user
  • mesg – Control write access to your terminal
  • who – Show who is logged on
  • w – Show logged-in users and their current tasks
  • id – Print real/effective UIDs/GIDs
  • man – Manual browser
  • locale – Get locale specific information
  • localedef – Compile locale definitions
  • sudo – Used to grant permission to carry out specific operations for specific users or groups.

Terminal configuration

  • stty – Change and print terminal line settings
  • tty – Print filename of terminal connected to standard input
  • tput – Initialize a terminal/query terminfo database

Files and texts

Filesystem Utilities

  • chgrp – Change the group of a file or directory
  • chmod – Change the permissions of a file or directory
  • chown – Change the owner of a file or directory
  • cp – Copy a file or directory to another location
  • df – Report disk space
  • du – Calculate used disk space
  • fdupes – Find or remove duplicate files within a directory
  • find – Search for files through a directory hierarchy
  • fsck – Filesystem check
  • ln – Link one file/directory to another
  • ls – List directory contents
  • mkdir – Make a directory
  • mkfifo – Make a named pipe
  • mount – Mount a filesystem
  • mv – Move or rename a file or directory
  • pwd – Print the current working directory
  • rm – Delete a file or directory tree
  • rmdir – Delete an empty directory
  • touch – Create a new file or update its modification time
  • tree – Print a depth-indented tree of a given directory
  • unlink – System call to remove a file or directory
  • lsof – list open files

Archivers and compression

  • afio – Compatible superset of cpio with added functionality
  • ar – Maintain, modify, and extract from archives. Now largely obsoleted by tar
  • bzip2 – Block–sorting file compressor
  • compress – Traditional compressor using the LZW algorithm
  • cpio – A traditional archiving tool/format
  • gzip – The gzip file compressor
  • pax – POSIX archive tool that handles multiple formats.
  • tar – Tape ARchiver, concatenates files
  • uncompress – Uncompresses files compressed with compress.
  • zcat – Prints files to stdout from gzip archives without unpacking them to separate file(s)

Text Processing

  • awk – A pattern scanning and processing language
  • banner – Creates ascii art version of an input string for printing large banners
  • cat – Concatenate files to standard output
  • cksum – Print the CRC checksum and bytecount of a file (see also MD5)
  • cmp – Compare two files byte for byte
  • comm – Sort two files and compare them line for line
  • csplit – Split a file into sections determined by context lines
  • cut – Remove sections from each line of a file or standard input
  • diff – Compare two files line by line
  • expand – Convert tabs to spaces
  • fc – Processes the command history list
  • fold – Wrap each input line to fit within the given width
  • grep – Print lines matching a pattern (now largely superseded by egrep)
  • head – Output the first parts of a file
  • iconv – Convert the encoding of the specified files
  • join – Join lines of two files on a common field
  • less – Improved more–like text pager
  • merge – Three way merge of files (see also paste)
  • more – Pager
  • nkf – Convert Japanese characters
  • nl – Number the lines of a file
  • od – Dump files in various formats, e.g. octal
  • paste – Merge lines of files
  • patch – Change files based on a patch file
  • rev – reverse lines of a file
  • sed – Stream EDitor
  • sort – Sort lines of text files
  • split – Split a file into pieces
  • taccat in reverse — displays files to standard output in reverse order starting at the end of the file
  • tail – Output the tail end of files
  • tee – Read from standard input, write to standard output and files
  • tr – Translate characters
  • tsort – Perform a topological sort
  • unexpand – Convert spaces to tabs
  • uniq – Remove duplicate lines from a sorted file
  • uudecode – Decodes a binary file that was used for transmission using electronic mail
  • uuencode – Encodes a binary file for transmission using electronic mail
  • wc – Word/line/byte count


  • ed – Traditional line-based Unix text editor
  • emacs – Powerful Lisp–based text editor and general computing environment
  • ex – Text editor, often a symbolic link to vi (or vim) which causes it to run in ex emulation mode
  • NEdit – The multi-purpose X11 editor
  • nano – Clone of pico
  • pico – PIne's message COmposition editor
  • sam – Bitmapped text editor with client-server design, by Rob Pike
  • vi – Visual text editor
  • vim – Vi IMproved, vi clone with syntax highlighting and many other enhancements
  • XEmacs – Popular version of emacs that is derived from GNU emacs

Communication, networking and remote access

  • Apache webserver
  • NFS – Network filesystem
  • OpenVPN
  • rsh, SSH, telnet – Remote consoles
  • Samba – SMB and CIFS client and server for UNIX
  • talk – Talk to another logged-in user
  • uux – Remote command execution over UUCP
  • uustat – a Basic Networking Utilities (BNU) command that displays status information about several types of BNU operations

Email programs

  • elm – Unix mail utility program
  • mail – Original Email utility
  • mailx – Improved Email utility
  • Mutt – Curses based mail reader

Network system services

  • xinetd – replacement for inetd
  • fingerd – a daemon for finger – a program used return a human-readable status report on either the system at the moment or a particular person in depth
  • inetd – a daemon on many Unix systems that manages Internet services

Network Utilities

  • dhcpd – the DHCP daemon
  • ifconfig – a tool used to configure a network interface for TCP/IP
  • ping – a network tool that tests of whether a particular host is up and reachable on the network
  • pppdPoint-to-Point protocol daemon
  • tcpd – Secures programs launched from inetd

Network monitoring and security

  • Ethereal – a protocol analyzer, or "packet sniffer", similar to tcpdump, that adds a GUI frontend, and more sorting and filtering options
  • Tethereal – text based version of "Ethereal"
  • ettercap – a tool for network protocol analysis
  • John the Ripper – password cracking software
  • Nmap – free port scanning software
  • Nessus – a comprehensive open-source network vulnerability scanning program
  • SATAN – the Security Administrator Tool for Analyzing Networks – a testing and reporting tool that collects information about networked hosts
  • Snort – an open source network intrusion detection system
  • tcpdump – a computer network debugging tool that intercepts and displays TCP/IP packets being transmitted or received

Programming tools

Script Interpreters

Compilers and programming tools

The classic UNIX environment includes a basic set of broadly available programming tools, but in the 21st century this classic environment is increasingly rare, as Unix-like operating system distributions diversify. Some include vastly more, and more modern and sophisticated, programming tools and environments, whereas others, focussing on serving a less technical audience, may disinclude even the most rudimentary programming utilities. Commands most familiar to a prior generation of UNIX users include:

  • admin – Administer SCCS files.
  • c99 – C programming language.
  • cc – C compiler.
  • ld – Program linker.
  • ctags – Generate tags file summarising location of objects in source files.
  • distcc – Tool for distributing compiles across multiple machines.
  • f77Fortran 77 compiler.
  • gcc – GNU Compiler Collection C frontend (also known as GNU C Compiler)
  • dbx – (System V and BSD) Symbolic debugger.
  • gdb – GNU symbolic debugger.
  • lex – Lexical scanner generator.
  • yacc – LALR parser generator.
  • m4 – Macro language.
  • make – Automate builds.
  • nm – List symbols from object files.
  • rmdel – remove a delta from an SCCS file.
  • strip – Remove debugging symbols from object files.
  • strace – (Linux) or truss (Solaris) Trace system calls with their arguments and signals. Useful debugging tool, but does not trace calls outside the kernel, in the address space of the process(es) being watched.
  • ltrace – (Linux) Trace dynamic library calls in the address space of the watched process.
  • ktrace – (BSD) Analogous to strace.

Scripting utilities

  • expr – Evaluate expressions
  • exit – Exit shell, optionally with return code
  • return – Return from shell function
  • false – Return a value that evaluates as False
  • true – Return a value that evaluates as True
  • xargs – Build and execute command lines from standard input
  • basename – Returns the final component of a path
  • batch – Runs jobs when the system load level permits
  • unset – Unsets a shell variable
  • break – terminate a loop before maturity
  • continue – Skip the current iteration of a loop
  • strings – Print strings of printable characters found in a file
  • times
  • test – Test an expression
  • hash – Command that remembers or reports command path names
  • shift

User interfaces

  • X11 – Graphical user interface (GUI)

Desktops/Graphical User Interfaces

  • Blackbox and its variants (including Fluxbox and Waimea)
  • CDE – Common Desktop Environment, most commonly found on proprietary UNIX systems
  • Enlightenment – an open source window manager for the X Window System
  • Fvwm and its variant Fvwm95, which has been modified to behave like Windows 95
  • GNOME – GNU Network Object Model Environment
  • IceWM – ICE Window Manager
  • JWM – Joe's Window Manager
  • KDE – K Desktop Environment
  • Quartz CompositorApple's GUI interface for the Darwin BSD based operating system Mac OS X
  • Window Maker
  • WMI – Window Manager Improved
  • XFce – a desktop environment for Unix and other Unix-like platforms


  • bash – Bourne Again SHell, standard shell on Linux systems.
  • csh – C shell.
  • ksh – Korn shell, standard shell on most proprietary Unix systems.
  • rc – originally written for Plan 9.
  • sh – Bourne shell, only shell present on all UNIX and Unix-like systems.
  • tcshTENEX C shell, standard shell on BSD systems.
  • zsh – Z shell.

Computer security

Antivirus software

  • ClamAV – E-mail virus scanner.


  • Enigmail – Graphical interface to gpg for Mozilla Application Suite and Mozilla Thunderbird.
  • gpg – GNU Privacy Guard, a complete and free replacement for PGP (to do file and email encryption and signature)
  • openssl – Secure Sockets Layer and general crypto library.
  • pinepgp – Filters which enable pine to use signed/encrypted email.
  • mcrypt -- Replacement for the legacy crypt program, can also make OpenPGP-compatible files.

Linux specific programs

Application software

Office suite


Web browsers

Desktop Publishing

  • Groff – Traditional typesetting system
  • LaTeX – Popular TeX macro package for higher–level typesetting
  • lp – Print a file (on a line printer)
  • Passepartout – Desktop publishing program
  • pr – Convert text files for printing
  • printf – Format and print data
  • Scribus – Desktop publishing program
  • TeX – High–quality macro–based typesetting system
  • troff – The original and standard Unix typesetting system

Database management systems

Mathematical and scientific software

  • maxima – Symbol manipulation program.
  • units – Unit conversion program.
  • octave – Numerical computing language (mostly compatible with Matlab) and environment.[1]
  • R – Statistical programming language.

Desktop utilities

  • dc – Reverse-Polish desk calculator which supports unlimited precision arithmetic
  • fortune – Fortune cookie program that prints a random quote
  • bc – An arbitrary precision calculator language with syntax similar to the C programming language.
  • cal – Displays a calendar

See also

External links

This category currently contains no pages or media.