我正在写一个简单的bash脚本,我要求用户输入一个输入文件。
我目前正在使用read -p
命令。但是,它无法使用unix中的文件名/目录的内置完成。每次我在此提示符下按Tab键,我的终端只会在文本编辑器中跳过类似于Tab功能的空格。有没有办法让它合并?
答案 0 :(得分:15)
使用-e
:
#!/bin/bash
read -e -p "Enter filename, use tab for completion: " file
ls -l "$file"
-e
使用readline
库来读取输入,就像bash为其提示一样。这不仅允许文件名完成,还允许使用箭头键,home / end,vi编辑和类似的优点。