# List of commands

User guide

## List of all commandline applications

Location: |  | /boot/system/bin/ ~/config/bin/ ~/config/non-packaged/bin/

All commandline applications shipped with Haiku are in /boot/system/bin/. Your own or additionally installed commandline apps will appear in ~/config/bin/ when installed from a .hpkg package. Otherwise you can put them into ~/config/non-packaged/bin/. All these locations are part of the PATH variable and are therefore automatically found.
Here's a list of all commandline applications that are shipped with Haiku. Each with only a short description of what it does, for more detailed information on its usage execute the command with the parameter `--help`.

Index: A – E :: F – J :: K – O :: P – S :: T – Z

`CortexAddOnHost` |  | Starts service to monitor audio and video media add-ons in use.
`FirstBootPrompt` |  | Language and keymap setup.
`[` |  | Returns true/false after comparing items.

## A

`addattr` |  | Writes an attribute to a file, taking the type into account and converting the values accordingly. (Haiku specific)
`alert` |  | Shows a message box. (Haiku specific)
`arp` |  | Manipulates the system ARP cache.
`awk` |  | See `gawk`.
`base64` |  | Base64 encode or decode to standard output.
`basename` |  | Strips directory and optionally suffix from a /path/to/filename string.
`bash` |  | Bourne-again shell.
`bc` |  | An arbitrary precision calculator language.
`beep` |  | Rings a bell.
`bunzip2` |  | See `bzip2`.
`bzip2` |  | File compressor.
`c++` |  | C -Compiler.
`cal` |  | Displays a calendar.
`cat` |  | Concatenates files and prints to standard output.
`catattr` |  | Prints out the contents of an attribute of a file. (Haiku specific)
`cc` |  | C-Compiler.
`checkfs` |  | Checks and repairs the file system. (Haiku specific)
`checkitout` |  | Checks out sources simply with their repository's URL.
`chgrp` |  | Changes group ownership of files.
`chmod` |  | Changes permissions of files.
`chop` |  | Splits a file into smaller files.
`chown` |  | Changes the owner of files.
`chroot` |  | Runs a command within a specified root directory.
`cksum` |  | Prints out CRC checksum and byte count of files.
`clear` |  | Clears the terminal window.
`clockconfig` |  | Prints out the clock configuration.
`cmp` |  | Compares files byte by byte.
`collectcatkeys` |  | [Leftover from the move of locale-kit.]
`comm` |  | Compares sorted files line by line.
`compress` |  | Data compression program.
`consoled` |  | Console daemon.
`copyattr` |  | Copies all or a subset of attributes from one or more files to another or new file. (Haiku specific)
`cp` |  | Copies files and directories.
`csplit` |  | Split a file into pieces separated by a specified pattern.
`ctags` |  | Generates an index file for a variety of language objects found in files.
`cut` |  | Prints out sections from each line of a file.
`date` |  | Displays or sets the current time and date.
`dc` |  | Desk calculator language.
`dd` |  | Copies raw data, converting and formatting according operands.
`desklink` |  | Installs items in Deskbar. (Haiku specific)
`diskimage` |  | Registers a file as disk device that can then be mounted. (Haiku specific)
`df` |  | Reports free and used space of mounted volumes.
`diff` |  | Compares files line by line.
`diff3` |  | Compares three files line by line.
`dircolors` |  | Color setup for `ls`.
`dirname` |  | Strips the filename from a /path/to/filename string.
`draggers` |  | Shows/sets the dragger state of Replicants.
`driveinfo` |  | Shows hardware information.
`dstcheck` |  | Shows a message box used when switching to/from daylight saving time.
`du` |  | Summarizes disk usage of each file, recursively for directories.
`dumpcatalog` |  | [Leftover from the move of locale-kit.]
`echo` |  | Displays a line of text.
`egrep` |  | See `grep`.
`eject` |  | Ejects removable media.
`env` |  | Runs a program in a modified environment.
`error` |  | Prints clear text error messages for given error numbers.
`expand` |  | Converts tabs to spaces.
`expr` |  | Prints the value of an expression.

## F

`factor` |  | Prints the prime factors of integer numbers.
`false` |  | Does nothing, indicates "unsuccessful" and returns the value "1".
`fdinfo` |  | Shows info about the used file descriptors in the system.
`ffm` |  | Sets focus follows mouse.
`fgrep` |  | See `grep`.
`filepanel` |  | Displays a load/save file panel. (Haiku specific)
`find` |  | Searches for files in a directory hierarchy.
`finddir` |  | Finds special directories defined by the system.
`fmt` |  | Reformats the paragraphs of a file.
`fold` |  | Wraps input lines of a file.
`fortune` |  | Prints a random, hopefully interesting, adage.
`frcode` |  | Called by updatedb to compress the list of file names.
`freetype-config` |  | Shows FreeType compilation and linking information.
`fstrim` |  | Send a TRIM command to an SSD drive.
`ftp` |  | File transfer program.
`ftpd` |  | FTP daemon.
`funzip` |  | Extracts the first item of an archive to standard output.
`fwcontrol` |  | FireWire control program.
`gawk` |  | Pattern scanning and processing language.
`gdb` |  | GNU debugger.
`getlimits` |  | Prints platform dependent limits in a format useful for shell scripts.
`grep` |  | Search for a pattern.
`groups` |  | Prints group memberships for each username.
`gunzip` |  | See `gzip`.
`gzexe` |  | De/Compresses executables.
`gzip` |  | De/Compresses files.
`hd` |  | Hexdump.
`head` |  | Prints the first lines of a file.
`hey` |  | A small tool for scripting GUI apps.
`hostname` |  | Prints or sets the hostname of the system.
`id` |  | Prints user and group information.
`ident` |  | Identifies RCS keywords in files.
`ifconfig` |  | Configures a network interface.
`install` |  | Copies files to a destination without disrupting the running system.
`install-wifi-firmwares.sh` |  | Installs firmware for various wireless network cards.
`installsound` |  | Installs a new sound event in the Sounds preferences panel.
`iroster` |  | Lists input devices.
`isvolume` |  | Gets information about a mounted volume.
`join` |  | For each pair of input lines with identical join fields, write a line to standard output.

## K

`kernel_debugger` |  | Enters the kernel debugger.
`keymap` |  | Loads or saves a keymap.
`kill` |  | Sends a signal to quit a process.
`less` |  | Views a file.
`lessecho` |  | Echos its arguments and expands metacharacters, such as * and ? in filenames.
`lesskey` |  | Specifies key binding for less.
`link` |  | Creates a link to a file.
`linkcatkeys` |  | [Leftover from the move of locale-kit.]
`listarea` |  | Lists area info for all currently running teams.
`listattr` |  | Lists the attributes of a file. (Haiku specific)
`listdev` |  | Lists all hardware devices.
`listimage` |  | Lists image info for all currently running teams.
`listport` |  | Lists all open ports in the system organized by team.
`listres` |  | Lists resources of files.
`listsem` |  | Lists the semaphores allocated by the specified team.
`listusb` |  | Lists USB devices.
`ln` |  | Creates a link to a file.
`locale` |  | Shows the set preferred language, its LC_CTYPE and the preferred formatting.
`locate` |  | Locates a file.
`logger` |  | Sends a message to the system log.
`login` |  | Starts a session on the system.
`logname` |  | Prints the name of the current user.
`ls` |  | Lists directory content.
`lsindex` |  | Displays the indexed attributes on the current volume/partition. (Haiku specific)
`mail2mbox` |  | Converts BeOS e-mail files to Unix mailbox files.
`make` |  | GNU make utility.
`makebootable` |  | Makes the specified BFS partitions/devices bootable by writing boot code into the first two sectors.
`mbox2mail` |  | Converts Unix mailbox files to BeOS e-mail files.
`md5sum` |  | Prints or checks MD5 checksums.
`merge` |  | Three-way file merge.
`message` |  | Prints a flattened BMessage file.
`mimeset` |  | Sets MIME type of a file.
`mkdepend` |  | Makefile dependency generator.
`mkdir` |  | Creates a directory.
`mkdos` |  | Initializes FAT partitions.
`mkfifo` |  | Creates named pipes.
`mkfs` |  | Creates a file system.
`mkindex` |  | Creates a new index for an attribute. (Haiku specific)
`mktemp` |  | Safely creates a temporary file or directory.
`modifiers` |  | Prints currently (un)pressed modifier keys.
`more` |  | See `less`.
`mount` |  | Mounts a file system.
`mount_nfs` |  | Mounts a NFS partition.
`mountvolume` |  | Mounts a volume by name.
`mv` |  | Moves/renames a file.
`netcat` |  | TCP and UDP utility.
`netstat` |  | Prints network connections, routing tables, interface statistics, masquerade connections and multicast memberships.
`nl` |  | Prints each file with line numbers added.
`nohup` |  | Runs a command ignoring hangup signals.
`nproc` |  | Prints the number of available processing units.
`od` |  | Writes an unambiguous representation of a file.
`open` |  | Launches an application/document from the shell. (Haiku specific)

## P

`package` |  | Creates, inspects, or extracts a Haiku package.
`package_repo` |  | Creates or inspects a Haiku package repository file.
`passwd` |  | Changes the user password.
`paste` |  | Prints lines consisting of the sequentially corresponding lines from each file, separated by tabs.
`patch` |  | Applies a diff file to an original.
`pathchk` |  | Diagnoses invalid or unportable file names.
`pc` |  | Programmer's calculator.
`ping` |  | Sends ICMP-echo-request to network host.
`pkg-config` |  | Analyzes and configures a Haiku package.
`pkgman` |  | Manages packages and package repositories.
`play` |  | Plays tracks from CD.
`playfile` |  | Plays an audio file.
`playsound` |  | Plays an audio file.
`playwav` |  | Plays a WAV file.
`pr` |  | Paginates or columnates files for printing.
`printenv` |  | Prints the value of an environment variable.
`printf` |  | Formats and prints data.
`prio` |  | Changes priority of a process.
`profile` |  | Profiles threads.
`ps` |  | Lists running processes.
`ptx` |  | Outputs a permuted index, including context, of the words in the input files.
`pwd` |  | Prints current directory.
`query` |  | A shell utility emulating Tracker's "Find by formula" functionality. (Haiku specific)
`quit` |  | Quits an application.
`rc` |  | Resource compiler.
`readlink` |  | Prints the path to the destination of a symbolic link.
`reindex` |  | Puts attributes of existing files into newly created indexes. (Haiku specific)
`release` |  | Releases a semaphore.
`renice` |  | Alters the priority of a running process.
`rlog` |  | Prints log messages and other information about RCS files.
`rm` |  | Removes files and directories.
`rmattr` |  | Removes an attribute from a file. (Haiku specific)
`rmdir` |  | Removes directories.
`rmindex` |  | Removes the index for an attribute. (Haiku specific)
`roster` |  | Prints information about running teams.
`route` |  | Lists and manipulates network routes.
`safemode` |  | Checks if the system is running in safemode.
`screen_blanker` |  | Starts the screen blanker.
`screenmode` |  | Show/sets the screen mode.
`sdiff` |  | Shows or merges differences of two files side-by-side.
`seq` |  | Prints a sequence of numbers.
`setdecor` |  | Shows/sets the decorator.
`setgcc` |  | Shows/sets the used gcc version.
`settype` |  | Sets the MIME type, signature and preferred application of a file.
`setversion` |  | Shows the version of a file.
`setvolume` |  | Sets the system sound volume.
`setwep` |  | Provides WEP encryption for wireless networks.
`sh` |  | See `bash`.
`sha1sum` |  | Prints or checks SHA1 checksums.
`shar` |  | Creates shell archives.
`shred` |  | Overwrites a file repeatedly.
`shuf` |  | Prints a random permutation of the input lines.
`shutdown` |  | Shuts down the computer.
`sleep` |  | Pauses for a specified number of seconds.
`sort` |  | Prints a sorted concatenation of all files.
`spamdbm` |  | Classifies e-mail messages as spam or genuine.
`split` |  | Outputs fixed-size pieces of input files to files with prefixes.
`stat` |  | Displays file or file system status.
`strace` |  | Traces the syscalls of a thread or a team.
`stty` |  | Shows/sets terminal characteristics.
`su` |  | Changes the effective user id and group.
`sum` |  | Prints checksum and block counts for each file.
`sync` |  | Forces changed blocks to disk, updates the superblock.
`sysinfo` |  | Shows system info.

## T

`tac` |  | Concatenates and prints files, last line first.
`tail` |  | Prints the last ten lines of a file.
`tcpdump` |  | Dumps traffic of a network.
`tcptester` |  | [deprecated]
`tee` |  | Writes or appends data from standard input to a file.
`telnet` |  | User interface to the telnet protocol.
`telnetd` |  | Telnet daemon.
`test` |  | Returns true/false after comparing items.
`timeout` |  | Starts a command and kills it if it's still running after a specified number of seconds.
`top` |  | Displays running threads and CPU usage.
`touch` |  | Changes a file's timestamp.
`tput` |  | Initializes a terminal or query terminfo database.
`tr` |  | Translates, squeezes and/or deletes characters from standard input.
`traceroute` |  | Prints the route packets take through a network.
`translate` |  | Uses DataTranslators to convert file formats.
`trash` |  | Sends files to trash or restores them.
`true` |  | Does nothing, indicates "success" and returns the value "0".
`truncate` |  | Shrinks or extends the size of a file.
`tsort` |  | Does a topological sorting.
`tty` |  | Prints the file name of the terminal connected to standard input.
`uname` |  | Prints out system information.
`unchop` |  | Recreates a file previously split with `chop`.
`unexpand` |  | Converts spaces to tabs.
`uniq` |  | Filters adjacent matching lines from input, writing to output.
`unlink` |  | Calls the unlink function to remove the specified file.
`unmount` |  | Unmounts a volume.
`unrar` |  | Expands a rar archive.
`unshar` |  | Expands a shar archive.
`untrash` |  | See `trash`.
`unzip` |  | Expands a zip archive.
`unzipsfx` |  | Used to make existing zip archives self-extracting.
`updatedb` |  | Updates a localization database.
`uptime` |  | Prints date and time, as well as the time elapsed since the system was started.
`urlwrapper` |  | Wraps URL MIME types around command line or other apps that don't handle them directly.
`useradd` |  | Creates a new user.
`uudecode` |  | Decodes a uuencoded file.
`uuencode` |  | Uuencodes a file so it can be mailed to a remote system.
`vdir` |  | Lists information about files.
`version` |  | Returns the version of a file.
`vmstat` |  | Prints information about the virtual memory system.
`waitfor` |  | Waits until a certain thread appears. (Haiku specific)
`watch` |  | Executes a program periodically.
`wc` |  | Prints the number of paragraphs, words and characters (bytes) of a file.
`wget` |  | Tool for downloading via HTTP, HTTPS or FTP.
`which` |  | Locates a command.
`whoami` |  | Prints user name associated with the current effective user ID.
`xargs` |  | Builds and executes command lines from standard input.
`xres` |  | Lists and manipulates resources.
`yes` |  | Prints out a string repeatedly until killed.
`zcat` |  | See `gzip`.
`zcmp` |  | See `zdiff`.
`zdiff` |  | Compares compressed files.
`zforce` |  | Forces a '.gz' extension on gzip files.
`zgrep` |  | Scan through possibly compressed files for a regular expression.
`zip` |  | Adds or replaces items in a zip archive.
`zipcloak` |  | Encrypts all unencrypted items in a zip archive.
`zipgrep` |  | Scans the given zip items for a string or pattern.
`zipinfo` |  | See `unzip`.
`zipnote` |  | Prints the comments in a zip archive.
`zipsplit` |  | Splits a zip archive into smaller pieces.
`zmore` |  | Like `more` but operates on the uncompressed contents of any compressed file.
`znew` |  | Recompresses .Z files into .gz (gzip) archives.