我需要我的bash脚本从用户那里获取函数名称。该脚本应通过自动完成在同一bash脚本文件中定义的函数来帮助用户。
例如:
myBash.sh
这是我需要的输出。如何陪伴它?
例如:
myBash.sh
#!/usr/bash
function func1()
{
echo "In func1 func"
}
function func2()
{
echo "In func2 func"
}
function myFunc1()
{
echo "In myFunc1 func"
}
while [ 1 ]
do
echo -n "cmd>"
read $userCmd
$userCmd
done
]$ ./mybash.sh
cmd> my<tab><tab>
myFunc1
cmd> func<tab><tab>
func1 func2
这是我需要的输出。如何陪伴它?
-e
选项来使用readline
处理输入(其中将包括命令完成)。更难的部分是让readline
仅使用本地定义的函数作为命令名称的潜在完成。 - chepner