我的个人资料中保留了一个小功能,可以让我快速访问一些配置文件:
viconf ()
{
COLUMNS=12;
printf "Edit config file:\n\n";
select x in ~/.bashrc ~/.bash_profile ~/.bash_login ~/.profile ~/.inputrc ~/.vimrc;
do
vim $x;
break;
done
}
它创建如下输出:
1) /home/boss/.bashrc
2) /home/boss/.bash_profile
3) /home/boss/.bash_login
4) /home/boss/.profile
5) /home/boss/.inputrc
6) /home/boss/.vimrc
#?
我对此不太满意。我希望#?
有一个\n
然后说Select a config file to edit with vi?
。我尝试了很多方法来编辑PS3
,但我尝试的所有方法都无法实现这一点(具体来说, 总是\n
失败)。如何让我的函数有自定义提示?
答案1
您可以在字符串中插入文字换行符:
PS3='
Select a config file to edit with vi? '
或者使用printf
C 风格\n
来换行:
PS3="$(printf '\nSelect a config file to edit with vi? ')"
或者使用 bash shellprintf -v
直接写入变量
printf -v PS3 '\n%s ' 'Select a config file to edit with vi?'