Linux BASH:printf“%s”的自动完成$keyword

Linux BASH:printf“%s”的自动完成$keyword,linux,bash,shell,Linux,Bash,Shell,我必须为平凡的printf%s找到一种非平凡的方法。 在我的例子中,所有关键字都是位于不同位置的物理文件。 我希望能够像使用CLI一样使用tab按钮来完成位置/文件,并显示所有以相同字母开头的文件。 是否可以将系统的索引添加到bash脚本中? 例如: ~~~~~~~~~ ./script.sh The file is: /home/user/file (Hit tab) file.txt file2 file5 /home/user/file. (Hit tab) /home/user/file

我必须为平凡的printf%s找到一种非平凡的方法。 在我的例子中,所有关键字都是位于不同位置的物理文件。 我希望能够像使用CLI一样使用tab按钮来完成位置/文件,并显示所有以相同字母开头的文件。 是否可以将系统的索引添加到bash脚本中? 例如:

~~~~~~~~~

./script.sh
The file is: /home/user/file
(Hit tab)
file.txt file2 file5
/home/user/file.
(Hit tab)
/home/user/file.txt
这些文件可以位于不同的位置。一次只提供一个参数。

printf在这里不相关;它是你想要完成的。在bash中,使用-e选项启用Readline支持

顺便说一下,通过使用-p选项打印提示符,您可以完全取消printf命令:

read -p "The file is: " -e keyword
read -e keyword
read -p "The file is: " -e keyword