J'exécute des scripts Bash, mais parfois je ne sais pas laquelle de ces commandes j'utilise appartient à qui. Parfois man xxx
fonctionne, parfois non, donc j'utilise --help
ou info
, principalement l'un de ces travaux pour afficher la description de la commande. Quelqu'un peut-il me dire comment je saurais à quelle commande appartient quoi? Bash intégré, GNU, etc.
Vous pouvez utiliser type
pour découvrir:
$ type echo
echo is a Shell builtin
$ type Sudo
sudo is /usr/bin/Sudo
Pour les commandes bash, utilisez help
, comme dans help echo
.
Certaines commandes intégrées sont incluses pour des raisons d'efficacité et existent en premier lieu en tant que commandes externes. Par exemple:
$ 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
Une analyse détaillée des commandes internes et externes peut être trouvée dans nix et Linux .
En ce qui concerne l'aide pour les doubles commandes internes/externes telles que echo
, vous avez deux choix. Une méthode consiste à utiliser 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)
Et vous pouvez taper:
$ 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
\0nnn 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.