Introduction
The type
command is used to display command type information. It will demonstrate how a command would be interpreted if typed directly into the command prompt.
In this tutorial, you will understand type
command in Linux. We will also address a few FAQs on Linux Type Command.
How to Use the type Command
type
is a shell that comes standard with Bash and other shells such as Zsh and Ksh. Its behavior may vary slightly from one shell to another. We'll look at the built-in version of type
in Bash.
The type
command has the following syntax:
type [OPTIONS] FILE_NAME...
For instance, to determine the type of the wc
command, type the following:
type wc
You will get an output like below:
Output
wc is /usr/bin/wc
You can also use the type
command with more than one argument:
type sleep head
Information regarding both sleep and head instructions will be included in the output:
Output
sleep is /bin/sleep
head is /usr/bin/head
Command Types
The -t
option instructs type
to output a single word that describes the command's type, which can be any of the following:
- alias (shell alias)
- function alias (shell function)
- builtin (shell builtin)
- file (disc file)
- keyword (shell reserved word)
Listed below are a few examples:
1) Alias
type -t grep
grep
is aliased to grep --color=auto
on our system.
Output
alias
2) Function
type -t rvm
rvm
is a function that allows you to install, manage, and work with multiple Ruby environments:
Output
function
3) Builtin
type -t echo
echo
is a shell that comes standard with Bash and other shells such as Zsh and Ksh:
Output
builtin
4) File
type -t cut
cut
is a program that can be run on your computer:
Output
builtin
5) Keyword
type -t for
In Bash, the term for
is a reserved word:
Output
keyword
Display all locations that contain the command
Use the -a
option to print all matches:
type -a pwd
pwd
is a shell built-in, however it is also available as a standalone /bin/pwd
program, as shown in the output:
Output
pwd is a shell builtin
pwd is /bin/pwd
Only if the -a
option is used, the type
command will include aliases and functions, only if the -p
option is not used.
Other type
command options
Only if the command is an executable file on the disc will the -p
option compel type
to return the path to the command:
Because the pwd
command is a shell built-in, the following command will not provide any output.
type -p pwd
The uppercase -P
option, unlike -p
, instructs type to look in the PATH
for an executable file on the disc even if the command is not a file.
type -P pwd
Output
pwd is /bin/pwd
type
will not look up for shell functions when the -f
option is given, as it does with the command built-in.
FAQs on Linux Type Command
How do I use the type
command?
Simply type type
followed by the command you want to check. For example, type ls
will display how the ls
command is interpreted by the shell.
Can the type
command show if a command is an alias?
Yes, the type
command will indicate if a command is an alias by displaying alias
followed by the original command and its definition.
How does the type
command identify shell built-in commands?
The type
command recognizes shell built-in commands by displaying shell built-in
next to the command name in the output.
Can I use the type
command to display function definitions?
Yes, the type
command will show function definitions by displaying function
followed by the function name and its definition.
What does the type
command display for external commands?
For external commands, the type
command will show the command's location or path in the filesystem.
How can I check the type
of all commands available in Linux?
The type
command supports wildcards, so you can use type *
to display the types of all available commands in your shell environment.
Can I use the type
command to verify if a command exists before running it?
Yes, you can use the type
command in combination with conditional statements in shell scripts to check if a command exists before executing it.
Conclusion
When you use the type
command on the command line, it will display how a given command will be parsed.
If you have any queries, please leave a comment below and we’ll be happy to respond to them.