linux怎么判断内外命令

不及物动词 其他 29

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在Linux中,可以通过以下方法来判断一个命令是内部命令还是外部命令。

    内部命令是指由Shell提供并直接在Shell中执行的命令。可能最常用的内部命令就是Shell的控制流命令(如if、for、while等)。可以通过使用type命令来判断一个命令是否为内部命令。例如,要判断命令ls是否为内部命令,可以在终端中输入以下命令:
    “`
    type ls
    “`
    如果输出结果显示为”ls is a shell builtin”,则表示ls是一个内部命令。

    外部命令是指由独立的可执行文件提供的命令。这些可执行文件通常位于系统的bin或usr/bin目录下。可以通过使用type命令来判断一个命令是否为外部命令。例如,要判断命令ls是否为外部命令,可以在终端中输入以下命令:
    “`
    type ls
    “`
    如果输出结果显示为”ls is /bin/ls”或类似的路径,则表示ls是一个外部命令。

    如果无法确定一个命令是内部命令还是外部命令,可以使用which命令来查找该命令所对应的可执行文件路径。例如,要查找命令ls的可执行文件路径,可以在终端中输入以下命令:
    “`
    which ls
    “`
    如果输出结果显示为/bin/ls或类似的路径,则表示ls是一个外部命令;如果没有输出结果,则表示ls可能是一个内部命令或者不存在。

    另外,可以通过使用help命令来查看Shell内置命令的帮助信息。例如,要查看命令cd的帮助信息,可以在终端中输入以下命令:
    “`
    help cd
    “`
    如果输出结果显示cd的用法和说明,则表示cd是一个内部命令。

    总结来说,可以通过使用type命令和which命令来判断一个命令是内部命令还是外部命令,同时可以使用help命令来查看内置命令的帮助信息。这些命令都是在Linux中判断内外命令的有用工具。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux中,可以通过以下几种方式来判断一个命令是内置命令还是外部命令:

    1. 使用type命令:type命令可以显示给定命令的类型。如果命令是内部命令,它将显示命令是内部的。如果命令是外部命令,它将显示命令的路径。

    例如:
    “`
    $ type ls
    ls is aliased to ‘ls –color=auto’
    $ type cd
    cd is a shell builtin
    $ type grep
    grep is /usr/bin/grep
    “`

    2. 使用which命令:which命令用于查找命令的绝对路径。如果命令是外部命令,which命令将显示命令的路径。如果命令是内部命令,which命令将无法找到该命令。

    例如:
    “`
    $ which ls
    /bin/ls
    $ which cd
    cd: shell built-in command
    $ which grep
    /usr/bin/grep
    “`

    3. 使用help命令:对于大部分的内置命令,可以使用help命令来获取命令的帮助信息。如果命令是内置命令,help命令将显示命令的帮助信息。如果命令是外部命令,help命令将无法找到该命令。

    例如:
    “`
    $ help cd
    cd: cd [-L|[-P [-e]] [-@]] [dir]
    Change the shell working directory.

    Change the current directory to DIR. The default DIR is the value of the HOME shell variable.

    […]
    “`

    4. 使用man命令:man命令用于查看命令的手册页。大部分的外部命令都有相应的手册页,而内置命令没有手册页。因此,如果使用man命令查看内置命令的手册页,将会显示类似”没有手册页”的信息。

    例如:
    “`
    $ man ls
    […]
    $ man cd
    No manual entry for cd
    $ man grep
    […]
    “`

    5. 查看文档或参考资料:如果以上方法无法判断命令是内部命令还是外部命令,可以查阅相应的文档或参考资料。Linux操作系统的官方文档、命令手册、Shell脚本编程指南等资源可以提供关于命令的详细信息,并指出命令是内部的还是外部的。可以通过搜索引擎或访问Linux的官方网站来获取相关文档和资料。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux系统中,可以通过以下几种方法来判断一个命令是内部命令还是外部命令。

    1. 使用which命令
    which命令是一个用于确定给定命令的绝对路径的命令。在命令行中输入”which 命令名”,如果该命令是外部命令,则输出该命令的绝对路径;如果是内部命令,则没有输出。例如,输入”which ls”,如果输出”/bin/ls”,说明ls是外部命令;如果没有输出,则说明ls是内部命令。

    2. 使用type命令
    type命令用于显示指定命令的类型,包括内部命令、外部命令和别名。在命令行中输入”type 命令名”,如果该命令是内部命令,则输出”command is a shell builtin”;如果是外部命令,则输出”command is /path/to/command”;如果是别名,则输出”command is aliased to ‘命令别名'”。例如,输入”type cd”,如果输出”cd is a shell builtin”,说明cd是内部命令;如果输出”cd is /usr/bin/cd”,则说明cd是外部命令。

    3. 使用help命令
    help命令用于显示内部命令的帮助信息。在命令行中输入”help 内部命令”,如果输出内部命令的帮助信息,则说明该命令是内部命令;如果报错或没有输出,说明该命令不是内部命令。

    4. 查看系统命令查找PATH路径
    Linux系统在执行命令时会按照一定的顺序在一系列路径中查找命令的可执行文件。可以通过查看系统命令查找路径来判断一个命令是内部命令还是外部命令。在命令行中输入”echo $PATH”,会输出当前用户的命令查找路径,多个路径以冒号分隔。如果一个命令的可执行文件位于查找路径中的某个路径下,则该命令为外部命令;如果命令的可执行文件不存在于查找路径中的任何一个路径下,则该命令为内部命令。

    5. 通过man页查看命令是否为内部命令
    man命令用于查看命令的手册页。使用man命令查看一个命令的手册页,如果能够打开手册页,则说明该命令是外部命令;如果报错或找不到手册页,则该命令可能是内部命令。

    进一步了解一个命令的详细信息,可以使用man命令。例如,输入”man ls”,可以查看ls命令的手册页,包括命令的描述、用法、选项和示例等内容。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部