Ich habe gestern eine Installation von Ubuntu 14 durchgeführt. Durch Zufall bin ich auf den suspend
Befehl gestoßen. Wenn ich ihn in der Kommandozeile eingebe und Enter drücke, hängt sich das Terminal auf. Weder kann ich es per CTRL
+ unterbrechen C
, noch läuft ein Prozess mit diesem Namen, den ich könnte kill
. Offensichtlich handelt es sich hier nicht um ein Skript, denn sowohl als auch which suspend
liefern whereis suspend
ein leeres Ergebnis:
void@wladiwostok ~ $ which suspend
void@wladiwostok ~ $ whereis suspend
suspend:
Ich nehme also an, dass es suspend
sich um eine Art „eingebauten“ Befehl exit
oder so etwas handeln muss. Ich frage mich nur,aus Neugier, was tut es?
Ich konnte keine Informationen darüber online finden, da die meisten Suchanfragen mir Informationen darüber gaben, wie manaussetzender Computer.
Antwort1
suspend
ist ein in die Shell integrierter Befehl:
Woher weiß ich das?
Führen Sie den Befehlstyp vor jedem Befehl aus, um festzustellen, um welchen Befehl es sich handelt:
$ type suspend
suspend is a shell builtin
Um Hilfe zu den in der Shell integrierten Befehlen zu erhalten, verwenden Siehelp
help suspend
suspend: suspend [-f]
Suspend shell execution.
Suspend the execution of this shell until it receives a SIGCONT signal.
Unless forced, login shells cannot be suspended.
Options:
-f force the suspend, even if the shell is a login shell
Exit Status:
Returns success unless job control is not enabled or an error occurs.
Um alle integrierten Befehle aufzulisten, führen Sie help
den Befehl einfach ohne Optionen aus.
help
Die Ausgabe ist:
job_spec [&] history [-c] [-d offset] [n] or hist>
(( expression )) if COMMANDS; then COMMANDS; [ elif C>
. filename [arguments] jobs [-lnprs] [jobspec ...] or jobs >
: kill [-s sigspec | -n signum | -sigs>
[ arg... ] let arg [arg ...]
[[ expression ]] local [option] name[=value] ...
alias [-p] [name[=value] ... ] logout [n]
bg [job_spec ...] mapfile [-n count] [-O origin] [-s c>
bind [-lpvsPVS] [-m keymap] [-f filen> popd [-n] [+N | -N]
break [n] printf [-v var] format [arguments]
builtin [shell-builtin [arg ...]] pushd [-n] [+N | -N | dir]
caller [expr] pwd [-LP]
case WORD in [PATTERN [| PATTERN]...)> read [-ers] [-a array] [-d delim] [->
cd [-L|[-P [-e]]] [dir] readarray [-n count] [-O origin] [-s>
command [-pVv] command [arg ...] readonly [-aAf] [name[=value] ...] o>
compgen [-abcdefgjksuv] [-o option] > return [n]
complete [-abcdefgjksuv] [-pr] [-DE] > select NAME [in WORDS ... ;] do COMM>
compopt [-o|+o option] [-DE] [name ..> set [-abefhkmnptuvxBCHP] [-o option->
continue [n] shift [n]
coproc [NAME] command [redirections] shopt [-pqsu] [-o] [optname ...]
declare [-aAfFgilrtux] [-p] [name[=va> source filename [arguments]
dirs [-clpv] [+N] [-N] suspend [-f]
disown [-h] [-ar] [jobspec ...] test [expr]
echo [-neE] [arg ...] time [-p] pipeline
enable [-a] [-dnps] [-f filename] [na> times
eval [arg ...] trap [-lp] [[arg] signal_spec ...]
exec [-cl] [-a name] [command [argume> true
exit [n] type [-afptP] name [name ...]
export [-fn] [name[=value] ...] or ex> typeset [-aAfFgilrtux] [-p] name[=va>
false ulimit [-SHacdefilmnpqrstuvx] [limit>
fc [-e ename] [-lnr] [first] [last] o> umask [-p] [-S] [mode]
fg [job_spec] unalias [-a] name [name ...]
for NAME [in WORDS ... ] ; do COMMAND> unset [-f] [-v] [name ...]
for (( exp1; exp2; exp3 )); do COMMAN> until COMMANDS; do COMMANDS; done
function name { COMMANDS ; } or name > variables - Names and meanings of so>
getopts optstring name [arg] wait [id]
hash [-lr] [-p pathname] [-dt] [name > while COMMANDS; do COMMANDS; done
help [-dms] [pattern ...] { COMMANDS ; }