如何获取 Ubuntu 可用的所有命令列表?

如何获取 Ubuntu 可用的所有命令列表?

我想开始更频繁地使用终端,但我不知道有哪些不同的命令可供我使用。有没有办法列出我可以使用的所有不同命令?

答案1

第一种方法

注意::感谢@Rmano。此方法不适用于 zshshell。

一个简单的命令:

ls ${PATH//:/ }

这将列出$PATH环境变量中的所有命令。

要将结果存储在文件中,您可以将输出重定向到文件。

ls ${PATH//:/ } > mycommands.txt

请注意,如果目录名称中包含空格,则此操作将返回错误$PATH。在这种情况下,请使用以下命令:

while read -d ':' dir; do echo "$dir"; done <<<$PATH

第二种方法

您还可以使用:

compgen -c | sort -u > commands && less commands

第三种方法

另一种方法是双击Tab

第四种方法

另一种使用命令的方法find

find {,/usr}/{,s}bin -printf '%f\n\0'

答案2

如果您使用的是 bash(所有官方 Ubuntu 版本中的默认 shell),请运行它compgen -c来查看可用的命令(包括别名)。

答案3

打开终端++Ctrl并运行此命令:Altt

whatis `compgen -c` | more 

这将列出所有命令以及每个命令的简单描述。

如果你想保存列表,你可以将结果重定向到输出文件

whatis `compgen -c` > listOfCommands.txt

那么我为什么使用 whatis 命令呢?该命令 man whatis给出:

每个手册页都有一个简短的描述。whatis
搜索手册页名称并显示与任何匹配名称的手册页描述。

因此请用简单的语言whatis对每个命令进行概括描述

答案4

命令列表很大程度上取决于您安装了什么,但有一些技巧可以列出所有命令。以下方法适用于大多数 Bourne 类 shell:

  1. Tab两次。
  2. 用于find查找所有可执行文件:

    find / -perm +x
    
  3. 列出二进制目录中的所有文件(可能不完整):

    ls /bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin
    

相关内容