是否有一个Linux命令将列出此终端会话的所有可用命令和别名?

就好像你输入“a”,然后按下tab键,不过是针对字母表中的每个字母。 或者运行'alias',但也返回命令。

为什么?我想运行以下命令,看看是否有可用的命令:

ListAllCommands | grep searchstr

当前回答

你可以随时进行以下操作:

1. Hold the $PATH environment variable value.
2. Split by ":"
3. For earch entry: 
    ls * $entry 
4. grep your command in that output.

只有当它们被列在env var路径中时,shell才会执行命令。

其他回答

你为什么不直接输入:

seachstr

在终点站。

外壳会说

seacrhstr: command not found 

编辑:

好吧,我投反对票,因为这个答案很愚蠢,我只是想知道:这个答案有什么问题!!提问者说:

并查看是否有命令可用。

输入命令将告诉您该命令是否可用!

可能他/她的意思是“不执行命令”或“将其包含在脚本中”,但我无法读懂他的想法(并不是我不能经常读懂,只是他穿着一件 读心术偏转器)

尝试按ALT-?(alt和问号同时输入)。给它一两秒钟的时间来构建列表。它应该在bash中工作。

对于Mac用户(find没有-executable, xargs没有-d):

echo $PATH | tr ':' '\n' | xargs -I {} find {} -maxdepth 1 -type f -perm '++x'

你可以随时进行以下操作:

1. Hold the $PATH environment variable value.
2. Split by ":"
3. For earch entry: 
    ls * $entry 
4. grep your command in that output.

只有当它们被列在env var路径中时,shell才会执行命令。

在到达debian: ls / bin / | grep whatImSearchingFor "