如何获取 $PATH 的制表符补全作为 bash 脚本中的参数?

How to get tab completion for $PATH as an argument in a bash script?

我有一个非常简单的脚本,可以使用 Vulkan API 对应用程序进行基准测试。它接受来自 </code>:</p> 的参数 <p><strong>基准应用程序:</strong></p> <pre><code>#!/usr/bin/env bash VK_INSTANCE_LAYERS=VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG=position=top-right

为了使用它,我 运行 benchmark-app example-game。它将接受参数并按预期执行,但是当使用制表符完成时,它会在 ./ 而不是 $PATH.

中查找

我使用 GNU 的 complete 命令完成了制表符补全。我创建了文件 /etc/bash_completion.d/benchmark-app 并添加了这一行:complete -F _command benchmark-app.