我要寻找有控制台自动完成的方法 - 比如给定的应用程序,如:。c控制台应用程序自动完成动态参数
int main (int argc, char ** argv)
{
if (argc == 1) return EXIT_FAILURE;
if (strcmp(argv[1], "good")==0) printf("good\n");
if (strcmp(argv[1], "bad")==0) printf("bad\n");
return EXIT_FAILURE;
}
当运行它,我想按[标签]后,命令,这样它会给我一个可能有用的选项。
例子:
./a.out g[tab]
将自动完成对
./a.out good
我不想编辑/etc/bash-completion.d/,我希望的是更强大的自动完成,就像可执行文件中的函数一样 - 可能会这样,它可能会查询数据库中的可能选项列表。或者输出一条消息,让你知道选项是什么。
如果您认为这完全不可能,请告诉我!
我认为最接近的(至少与zsh,而不是bash,我猜这些天是相似的),你可以通过添加一个--help选项返回一个“标准”布局中的有效选项列表,你的shell完成可以理解。 – Flexo 2011-05-24 08:18:21