Você pode usar type
para descobrir:
$ type echo
echo is a shell builtin
$ type sudo
sudo is /usr/bin/sudo
Para construções internas, use help
, como em help echo
.
Estou executando o script Bash, mas às vezes fico confuso sobre quais desses comandos eu uso pertencem a quem. Às vezes man xxx
funciona, às vezes não, então eu uso --help
ou info
, principalmente um desses trabalhos para mostrar a descrição do comando. Alguém pode me dizer como eu saberia qual comando pertence a quê? Bash builtin, utilitário GNU, etc.
Você pode usar type
para descobrir:
$ type echo
echo is a shell builtin
$ type sudo
sudo is /usr/bin/sudo
Para construções internas, use help
, como em help echo
.
Alguns comandos embutidos são incluídos para eficiência e existem como comandos externos em primeiro lugar. Por exemplo:
$ type -a echo
echo is a shell builtin
echo is /bin/echo
$ type -a printf
printf is a shell builtin
printf is /usr/bin/printf
Uma análise detalhada de comandos internos e externos pode ser encontrada em Unix & Linux .
No que diz respeito a obter ajuda para comandos internos / externos duplos, como echo
, você tem duas opções. Um método é usando man echo
:
ECHO(1) User Commands ECHO(1)
NAME
echo - display a line of text
SYNOPSIS
echo [SHORT-OPTION]... [STRING]...
echo LONG-OPTION
DESCRIPTION
Echo the STRING(s) to standard output.
-n do not output the trailing newline
-e enable interpretation of backslash escapes
-E disable interpretation of backslash escapes (default)
--help display this help and exit
--version
output version information and exit
If -e is in effect, the following sequences are recognized:
\ backslash
\a alert (BEL)
Manual page echo(1) line 1 (press h for help or q to quit)
E você pode digitar:
$ help echo
echo: echo [-neE] [arg ...]
Write arguments to the standard output.
Display the ARGs, separated by a single space character and followed by a
newline, on the standard output.
Options:
-n do not append a newline
-e enable interpretation of the following backslash escapes
-E explicitly suppress interpretation of backslash escapes
'echo' interprets the following backslash-escaped characters:
\a alert (bell)
\b backspace
\c suppress further output
\e escape character
\E escape character
\f form feed
\n new line
\r carriage return
\t horizontal tab
\v vertical tab
\ backslash
$ type -a echo
echo is a shell builtin
echo is /bin/echo
$ type -a printf
printf is a shell builtin
printf is /usr/bin/printf
nnn the character whose ASCII code is NNN (octal). NNN can be
0 to 3 octal digits
\xHH the eight-bit character whose value is HH (hexadecimal). HH
can be one or two hex digits
Exit Status:
Returns success unless a write error occurs.