我已经尝试了几天了,虽然我知道我可以编写一个bash函数以使其达到我想要的方式,但是我确信这个选项是现成的。 / p>
我最近已升级到RHEL 7.11,在以前的RHEL版本中,当使用双标签时,如果我的选项不明确,它将显示一个带编号的菜单。
考虑一下,我有一个包含以下文件的目录:
abc abcd abcde abcdef abcdefg abcdefgh abcdefghi
所以当我键入:
cat abc [tab][tab]
有多个比赛,我会得到:
1) abc
2) abcd
3) abcde
4) abcdef
5) abcdefg
6) abcdefgh
7) abcdefghi
随后,我可以输入'7'和 [tab] ,它将在选项 7)处连接文件。
当有很多类似的选项,并且许多文件以相同的字符开头时,这非常有用。(在我的服务器上,为清楚起见,文件名以系统名开头)。
有什么想法吗?
答案 0 :(得分:1)
我推荐https://github.com/junegunn/fzf,我开始用此GREAT工具替换所有的内置菜单选项。
它具有bash支持,包括电池。
答案 1 :(得分:-6)
以.sh扩展名创建bash脚本文件
touch menutools.sh
使bash脚本文件可执行
chmod +x menutools.sh
将bash解释器插入脚本
echo '#!/bin/bash' > menutools.sh
使用基于菜单的脚本编辑脚本文件
#!/bin/bash
echo '*********************************************'
echo '* Menu of Tools *'
echo '*********************************************'
echo -e "\n\n"
echo "(1) Create file"
echo "(2) Copy file"
echo "(3) Move file"
echo -e "\n\n"
echo "Enter your choice: "
read userChoice
if [ $userChoice == "1" ]; then
clear;
echo '*********************************************'
echo '* Menu of Tools *'
echo '*********************************************'
echo -e "\n\n"
echo -e "************[Creating file]**************\n\n"
echo "(1) Enter name for the file: "
read fileName
touch $fileName
echo "$fileName created successfully."
fi
运行脚本
./menutools.sh
或
bash menutools.sh