Bagaimana saya membedakan antara perintah, utilitas, atau builtin untuk mendapatkan dokumentasi?

9

Saya menjalankan skrip Bash, tapi terkadang saya bingung perintah mana yang saya gunakan milik siapa. Terkadang man xxxberhasil, kadang tidak, jadi saya menggunakan --helpatau info, sebagian besar dari salah satu karya ini untuk menampilkan deskripsi perintah. Adakah yang bisa memberi tahu saya bagaimana saya tahu perintah apa yang menjadi milik apa? Bash builtin, utilitas GNU, dll.

pengguna198436
sumber

Jawaban:

6

Anda dapat menggunakannya typeuntuk mencari tahu:

$ type echo
echo is a shell builtin
$ type sudo
sudo is /usr/bin/sudo

Untuk bash builtin, gunakan help, seperti pada help echo.

choroba
sumber
3

Beberapa perintah bawaan disertakan untuk efisiensi dan ada sebagai perintah eksternal sejak awal. Sebagai contoh:

$ 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

Analisis terperinci dari builtin dan perintah eksternal dapat ditemukan di Unix & Linux .


Sejauh mendapatkan bantuan untuk dual builtin / perintah eksternal seperti echoAnda memiliki dua pilihan. Salah satu metode adalah dengan menggunakan 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)

Dan Anda dapat mengetik:

$ 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.
WinEunuuchs2Unix
sumber