Kali Linux Commands are very useful if you are using the terminal in Linux Kali distribution. Kali Commands PDF is a very handy way to use Linux Kali Commands.

Kali Linux – two words combined together. This suggests a twofold activity. One is digital forensics and the other is penetration testing. It encompasses other activities such as Security Auditing and research, Computer Forensics and Reverse Engineering. The whole process is funded by Offensive Security Limited and is specifically designed to meet the security needs and audits. To describe in layman terms, Kali Linux is an operating system that was initially known as BackTrack. Though it is similar to other Linux based systems, it has a unique feature that is entirely different. It has free hacking tools that are most needed or used by black hat hackers. The security tools used are Armitage, Aircrack-ng, and Burp Suite and so on. In addition, the changes or updates made in Kali Linux are basically to fulfill specific needs such as:

  1. Single root user: Because of security concerns, many penetration tests need extra privileges and so single root user is considered a privilege.
  2. Disable network services: Kali Linux has unique system hooks that disable network services including Bluetooth.
  3. Minimal repositories: Since the integrity of the system has to be maintained at all cost, the upstream software sources set is kept at a minimum.

List of Kali Linux Commands from A to Z:


Here is the list of all top-level Linux Kali commands from letter A to Z in alphabetical order. You can also download the Kali Commands PDF by clicking the download button given below so it will be easier for you to access the next time you want it.


Kali Linux commandsFunction
 apropos Search Help manual pages (man -k)
 apt-get Search for and install software packages (Debian)
 aptitude Search for and install software packages (Debian)
 aspell Spell Checker
 awk Find and Replace text, database sort/validate/index
 basename Strip directory and suffix from filenames
 bash GNU Bourne-Again Shell
 bc Arbitrary precision calculator language
 bg Send to background
 break Exit from a loop
 builtin Run a shell builtin
 bzip2 Compress or decompress named files
 cal Display a calendar
 case Conditionally perform a command
 cat Concatenate and print (display) the content of files
 cd Change Directory
 cfdisk Partition table manipulator for Linux
 chgrp Change group ownership
 chmod Change access permissions
 chown Change file owner and group
 chroot Run a command with a different root directory
 chkconfig System services (runlevel)
 cksum Print CRC checksum and byte counts
 clear Clear terminal screen
 cmp Compare two files
 comm Compare two sorted files line by line
 command Run a command – ignoring shell functions
 continue Resume the next iteration of a loop
 cp Copy one or more files to another location
 cron Daemon to execute scheduled commands
 crontab Schedule a command to run at a later time
 csplit Split a file into context-determined pieces
 cut Divide a file into several parts
 date Display or change the date and time
 dc Desk Calculator
 dd Convert and copy a file, write disk headers, boot records
 ddrescue Data recovery tool
 declare Declare variables and give them attributes
 df Display free disk space
 diff Display the differences between two files
 diff3 Show differences among three files
 dig DNS lookup
 dir Briefly list directory contents
 dircolors Colour setup for `ls’
 dirname Convert a full pathname to just a path
 dirs Display list of remembered directories
 dmesg Print kernel & driver messages
 du Estimate file space usage
 echo Display message on screen
 egrep Search files for lines that match an extended expression
 eject Eject removable media
 enable Enable and disable builtin shell commands
 env Environment variables
 ethtool Ethernet card settings
 eval Evaluate several commands/arguments
 exec Execute a command
 exit Exit the shell
 expect Automate arbitrary applications accessed over a terminal
 expand Convert tabs to spaces
 export Set an environment variable
 expr Evaluate expressions
 false Do nothing, unsuccessfully
 fdformat Low-level format a floppy disk
 fdisk Partition table manipulator for Linux
 fg Send job to foreground
 fgrep Search files for lines that match a fixed string
 file Determine file type
 find Search for files that meet a desired criteria
 fmt Reformat paragraph text
 fold Wrap text to fit a specified width
 for Expand words, and execute commands
 format Format disks or tapes
 free Display memory usage
 fsck File system consistency check and repair
 ftp File Transfer Protocol
 function Define Function Macros
 fuser Identify/kill the process that is accessing a file
 gawk Find and Replace text within files
 getopts Parse positional parameters
 grep Search files for lines that match a given pattern
 groupadd Add a user security group
 groupdel Delete a group
 groupmod Modify a group
 groups Print group names a user is in
 gzip Compress or decompress named files
 hash Remember the full pathname of a name argument
 head Output the first part of files
 help Display help for a built-in command
 history Command History
 hostname Print or set system name
 iconv Convert the character set of a file
 id Print user and group id’s
 if Conditionally perform a command
 ifconfig Configure a network interface
 ifdown Stop a network interface
 ifup Start a network interface up
 import Capture an X server screen and save the image to file
 install Copy files and set attributes
 jobs List active jobs
 join Join lines on a common field
 kill Stop a process from running
 killall Kill processes by name
 less Display output one screen at a time
 let Perform arithmetic on shell variables
 ln Create a symbolic link to a file
 local Create variables
locate Find files (Linux Kali Commands)
 logname Print current login name
 logout Exit a login shell
 look Display lines beginning with a given string
 lpc Line printer control program
 lpr Off line print
 lprint Print a file
 lprintd Abort a print job
 lprintq List the print queue
 lprm Remove jobs from the print queue
 ls List information about files
 lsof List open files
 make Recompile a group of programs
 man Help manual
 mkdir Create new folders
 mkfifo Make FIFOs (named pipes)
 mkisofs Create an hybrid ISO9660/JOLIET/HFS filesystem
 mknod Make block or character special files
 more Display output one screen at a time
 mount Mount a file system
 mtools Manipulate MS-DOS files
 mtr Network diagnostics (traceroute/ping)
 mv Move or rename files or directories
 mmv Mass Move and rename files
 netstat Networking information
 nice Set the priority of a command or job
 nl Number lines and write files
 nohup Run a command immune to hangups
 notify-send Send desktop notifications
 nslookup Query Internet name servers interactively
 open Open a file in its default application
 op Operator access
 passwd Modify a user password
 paste Merge lines of files
 pathchk Check file name portability
 ping Test a network connection
 pkill Stop processes from running
 popd Restore the previous value of the current directory
 pr Prepare files for printing
 printcap Printer capability database
 printenv Print environment variables
 printf Format and print data
 ps Process status
 pushd Save and then change the current directory
 pwd Print Working Directory
 quota Display disk usage and limits
 quotacheck Scan a file system for disk usage
 quotactl Set disk quotas
 ram ram disk device
 rcp Copy files between two machines
 read Read a line from standard input
 readarray Read from stdin into an array variable
 readonly Mark variables/functions as readonly
 reboot Reboot the system
 rename Rename files
 renice Alter priority of running processes
 remsync Synchronize remote files via email
 return Exit a shell function
 rev Reverse lines of a file
 rm Remove files
 rmdir Remove folders
 rsync Remote file copy (Synchronize file trees)
 screen Multiplex terminal, run remote shells via ssh
 scp Secure copy (remote file copy)
 sdiff Merge two files interactively
 sed Stream Editor
 select Accept keyboard input
 seq Print numeric sequences
 set Manipulate shell variables and functions
 sftp Secure File Transfer Program
 shift Shift positional parameters
 shopt Shell Options
 shutdown Shutdown or restart linux
 sleep Delay for a specified time
 slocate Find files
 sort Sort text files
 source Run commands from a file
 split Split a file into fixed-size pieces
 ssh Secure Shell client (remote login program)
 strace Trace system calls and signals
 su Substitute user identity
 sudo Execute a command as another user
 sum Print a checksum for a file
 suspend Suspend execution of this shell
 symlink Make a new name for a file
 sync Synchronize data on disk with memory
 tail Output the last part of file
 tar Tape Archiver
 tee Redirect output to multiple files
 test Evaluate a conditional expression
 time Measure Program running time
 times User and system times
 touch Change file timestamps
 top List processes running on the system
 traceroute Trace Route to Host
 trap Run a command when a signal is set(bourne)
 tr Translate, squeeze, and/or delete characters
 true Do nothing, successfully
 tsort Topological sort
 tty Print filename of terminal on stdin
 type Describe a command
 ulimit Limit user resources
 umask Users file creation mask
 umount Unmount a device
 unalias Remove an alias
 uname Print system information
 unexpand Convert spaces to tabs
 uniq Uniquify files (Kali Linux Commands)
 units Convert units from one scale to another
 unset Remove variable or function names
 unshar Unpack shell archive scripts
 until Execute commands (until error)
 uptime Show uptime
 useradd Create new user account
 usermod Modify user account
 users List users currently logged in
 uuencode Encode a binary file
 uudecode Decode a file created by uuencode
 v Verbosely list directory contents (`ls -l -b’)
 vdir Verbosely list directory contents (`ls -l -b’)
 vi Text Editor
 vmstat Report virtual memory statistics
 wait Wait for a process to complete
 watch Execute/display a program periodically
 wc Print byte, word, and line counts
 whereis Search the user’s $path, man pages and source files for a program
 which Search the user’s $path for a program file
 while Execute commands
 who Print all usernames currently logged in
 whoami Print the current user id and name (`id -un’)
 wget Retrieve web pages or files via HTTP, HTTPS or FTP
 write Send a message to another user
 xargs Execute utility, passing constructed argument lists
 xdg-open Open a file or URL in the user’s preferred application
 yes  Print a string until interrupted

Linux Kali Commands

The best and easiest way to use Kali Linux is by using commands. There are many commands to remember so many new users might find it difficult to remember or learn them. One good point is that since the system is similar to other Linux operating systems, the basic commands are quite similar as well. The advanced commands are of course top-notch. This article will cover some of the basic and advanced commands. The commands can be divided into two main categories.

kali linux commands pdf

System Commands

This is the name itself denotes are used for system administration and are useful for managing the Kali Linux operating system. The commands are similar to the ones used in Mint, RHEL, and Ubuntu.

Some of them which make it on the list of the SYSTEM COMMANDS are :

  • history command: This gives details about the running commands used recently. The Code is $history
  • Free command: This shows the total, free and the swap memory information that is the memory used till and now and how much is still available. The code is $free
  • sort command: as the name itself signifies the lines of text files can be sorted in ascending order or descending order. The code for ascending order is $sort filename.txt and for descending order it is $sort –r filename.txt

Then there is the System Advanced Commands in Kali Linux Commands:

  • Find command: In order to find a file by name, size is very difficult in Linux. So this command is useful as it helps the user to search for files based on user given expression and user-specified action.
  • The unzip command: Most of the big files downloaded are in zip format. This command will help in unzipping or extracting the files. The basic syntax is #unzip file name.zip
  • The SCP command: This is used for copying files from one device to another device. The noteworthy feature is that is copies files over ssh protocol. Hackers use this command to compromise the system and transfer files.
  • Other commands which are available are the Cron command which is a daemon for executing scheduled commands. The fgrep command searches for files that meet specific criteria. And last of all, of course, is the help command which displays all the built-in commands.

Tool or basic commands

Basic commands are very simple and can be tried out by new users. To spell out a few commands, ls stands for list directory, Nmap means network mapper (for scanning open ports, OS detection), lsblk means list block devices. Noteworthy commands are apt-get. This updates a Debian machine and is used for installing Debian packages and programs. The Sudo command is used for executing a command as root user and the Chroot command allows for a command to run with a different root directory.

There are other simple commands which are enumerated below:

  • date command: This is used for checking the current time and date. It involves using the # hashtag and $ sign. This date can be changed by using the following code: $ date-set=’new date’
  • cal command: This is for displaying the calendar. The code is $cal
  • whoami command: This is used to find out the user name by which you have logged into. The code is $whoami
  • pwd command: This is to know on what location you are working on that is the directory and subdirectory details.
  • is command: this is used for knowing the files and folders inside a directory. The code is $Is
  • cd command: this is for changing the directory. The code is $cd
  • mkdir command: this is used for creating a directory. The code is $mkdir. However, if a directory is needed in a particular location, then it has to be specified in the code. For instance, the code will then have to be $mkdir/desired location/directoryname
  • cp command: This command is used to copy files and folders. It is actually a big command.

So with the use of a few simple commands, websites and wireless networks can be hacked. Not only that tasks can be automated and software programs can be installed. In addition, the creation of additional user accounts, optimization of terminal interactions, the configuration of software, etc. can be done with just a few of these commands.

Final Verdict

With this article, it is hoped that most of the useful commands are covered and so Kali Linux can be used to the maximum. There is no fixed list of commands. They are based on the user needs and therefore have not been numbered in this article. Some users might prefer or use only certain commands whereas others might prefer some other commands. So a right mix of different commands have been included in this article and so hope that you find them useful.