如何列出 Linux 中所有可用的命令和别名?

linuxoperating systemopen source

Linux 为我们提供了大量的命令及其别名,我们可以根据需要使用它们。虽然这些命令用途各异,但我们仍然可以在终端的任何位置使用它们。

我们可以通过不同的方式与 Linux 命令进行交互。

当要列出终端所有可用命令时,我们也有不同的方法,我们可以自己编写 shell 脚本,也可以使用 shell 库函数来完成这项工作。

让我们考虑第一种方法,我将使用一个名为 `compgen` 的 shell 库关键字,这是一个 bash 内置命令,可以用来列出所有可用命令。

语法


`compgen -flag`

在上面的语法中,`-flag` 是一个占位符,可以根据需要替换。

``-flag 可以具有以下不同的值:`&-`。

  • -c − 用于列出所有可以运行的命令。

  • -a − 用于列出所有可运行的别名。

  • -k − 用于列出所有可运行的关键字。

  • -b − 用于列出所有可运行的内置函数。

  • -A 函数 − 用于列出所有可运行的函数。

  • -A 函数 -abck −用于一次性列出上面显示的所有内容。

由于我们只需要列出命令及其别名,因此我们将仅使用 -c 和 -a 标志。

要使用它,只需创建一个包含以下命令的 shell 文件即可。

touch sample.sh

现在插入以下代码。


compgen -c

然后在运行脚本之前授予其权限。

chmod 777 sample.sh
./sample.sh

输出

immukul@192 Downloads % ./sample.sh
if
then
else
elif
fi
case
esac
for
select
while
until
do
done
in
.
.
.

要打印别名,我们只需要将 sample.sh 文件中的代码替换为下面所示的代码即可。

compgen -a | grep ls

输出

ls is /bin/ls

相关文章


有用资源