将制表符补全添加到 bash 脚本中

将制表符补全添加到 bash 脚本中

我正在创建一个对文件进行一些处理的脚本。对于文件,我将从当前目录中选择任何文件或给出文件的路径。

问题是文件名可能很大,因此输入所有内容会很痛苦。

echo "Enter file name"
read FILE

上面的代码演示了我正在尝试做的事情。运行这个脚本时,我必须一个字符一个字符地输入文件名,这将是一个巨大的痛苦。我想通过按 来获得像在任何终端应用程序中一样的建议Tab

我想要这样的东西像这样的东西Tab在写入文件名时按下时显示。我怎样才能实现这个目标?

答案1

您可以像这样读取输入文件名:

#!/bin/bash
read -e -p "Enter filename: " f
printf "filename: %s\n" "$f"

read -e使用readline已经具有制表符补全功能的路径。read --help以及man readline有关它们的详细信息。

相关内容