GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Verwendung des Befehls:"Befehl"?

Kürzlich habe ich den Befehl gefunden:command die keinen manuellen Eintrag hat, aber die Hilfe wie folgt anzeigt:

$ help command
command: command [-pVv] command [arg ...]
    Execute a simple command or display information about commands.

    Runs COMMAND with ARGS suppressing  shell function lookup, or display
    information about the specified COMMANDs.  Can be used to invoke commands
    on disk when a function with the same name exists.

    Options:
      -p    use a default value for PATH that is guaranteed to find all of
        the standard utilities
      -v    print a description of COMMAND similar to the `type' builtin
      -V    print a more verbose description of each COMMAND

    Exit Status:
    Returns exit status of COMMAND, or failure if COMMAND is not found.

Ist command -v ist eine Alternative von which ?

Welche Argumente werden von diesem Befehl akzeptiert und wie/wann command zu verwenden ist ?

Beste Antwort

command ist eine eingebaute Bash wie wir sehen können:

[email protected]:~$ type command
command is a shell builtin

Wir kennen also command wird von unserer Shell bash bereitgestellt. Eintauchen in man bash wir können sehen, wozu es dient:

(aus man bash ):

command [-pVv] command [arg ...]
              Run  command  with  args  suppressing  the normal shell function
              lookup. Only builtin commands or commands found in the PATH  are
              executed.   If the -p option is given, the search for command is
              performed using a default value for PATH that is  guaranteed  to
              find  all  of  the  standard  utilities.  If either the -V or -v
              option is supplied, a description of command is printed.  The -v
              option  causes a single word indicating the command or file name
              used to invoke command to be displayed; the -V option produces a
              more  verbose  description.  If the -V or -v option is supplied,
              the exit status is 0 if command was found, and  1  if  not.   If
              neither  option  is  supplied  and  an error occurred or command
              cannot be found, the exit status is 127.   Otherwise,  the  exit
              status of the command builtin is the exit status of command.  

Im Wesentlichen würden Sie command verwenden um die „normale Funktionssuche“ zu umgehen. Angenommen, Sie hatten eine Funktion in Ihrer .bashrc :

function say_hello() {
   echo 'Hello!'
}

Normalerweise, wenn Sie say_hello ausführen in Ihrer Terminal-Bash würde die Funktion namens say_hello finden in Ihrer .bashrc vorher es hat beispielsweise eine Anwendung namens say_hello gefunden . Verwendung:

command say_hello  

bewirkt, dass Bash seine normale Funktionssuche umgeht und direkt zu den eingebauten Funktionen oder zu Ihrem $PATH geht . Beachten Sie, dass diese Funktion auch nachschlägt Pseudonyme enthalten. Mit command umgeht sowohl Funktionen als auch Aliase.

Verwandte:Sind diese SATA-Fehler gefährlich?

Wenn das -p Option bereitgestellt wird, umgeht bash Ihren benutzerdefinierten $PATH und verwendet seinen eigenen Standard.

Das -v oder -V flags bash gibt eine Beschreibung aus (kurz für -v , lang für -V ) des Befehls.

Hinweis:Wie souravc in den Kommentaren darauf hingewiesen hat, findet man hier eine einfachere Methode zum Auffinden von Informationen über eingebaute Shell-Befehle:How to make `man` work for shell builtin commands and keywords?


Ubuntu
  1. So verwenden Sie den sudo-Befehl unter Linux

  2. Wie verwende ich den DD Show Progress-Befehl unter Linux?

  3. So verwenden Sie den Su-Befehl unter Linux

  4. Verwendung von ssh-keyscan unter Ubuntu

  5. Verwendung des SSH-Agenten unter Ubuntu

So verwenden Sie einen Dateibefehl unter Linux

Verwendung des Head-Befehls unter Linux

So verwenden Sie den pkill-Befehl

So verwenden Sie den LDD-Befehl unter Linux

So verwenden Sie den PS-Befehl

So verwenden Sie den TOP-Befehl