Answers:
看来,这bash
是Xubuntu的默认shell。
编辑.bashrc
或.bash_profile
(取决于您的系统配置)并查找以开头的行PS1=
。这行设置您的提示。
要添加最后一条命令的返回值,请在该行中添加以下内容:
`echo -n $?`
因此它看起来像以下内容(我当前的提示,简化了):
PS1='\u in \w (`echo -n $?`)\n -> \$ '
它看起来像这样,与_
被光标:
danielbeck in ~ (0)
-> $ _
另外,您可以使用环境变量PROMPT_COMMAND
在返回代码之前添加提示:
export PROMPT_COMMAND='RET=$?; echo -n "($RET) "'
例如,这将(0)
在您未修改的提示之前添加。
通过\#
在提示符后添加“计数器” :这是命令编号。历史记录号可能更有用,它不是从1开始,而是允许您通过输入感叹号和命令的历史记录号来执行任何命令:
984 $ foo
-bash: foo: command not found
985 $ !984
foo
-bash: foo: command not found
986 $ _
经过一些额外的播放后:
PS1='`RET=$?; if [ $RET != 0 ] ; then echo "rc $?"; fi`\n\u in `pwd`\n#\# !\! \$ '
如果返回值非零,则仅在其自己的行上显示。命令号和历史记录号与您要输入的命令在同一行:
danielbeck in /Users/danielbeck/Downloads
#1 !984 $ foo
-bash: foo: command not found
rc 127
danielbeck in /Users/danielbeck
#2 !985 $ _
该变量$?
包含上次运行程序的退出代码。
ninth:~ sakkaku$ echo Hello World
Hello World
ninth:~ sakkaku$ echo $?
0
ninth:~ sakkaku$ cat asdasd
cat: asdasd: No such file or directory
ninth:~ sakkaku$ echo $?
1
我认为您可以通过使用增量器来获得“已执行的命令数”
ninth:~ sakkaku$ echo $[numcommands++]
0
ninth:~ sakkaku$ echo $[numcommands++]
1
ninth:~ sakkaku$ echo $[numcommands++]
2
ninth:~ sakkaku$ echo $[numcommands++]
3
然后,您将需要在.bashrc中修改PS1 / PS2变量以更改提示。 这似乎是一个不错的指南(除非它建议修改/ etc / bashrc,否则我只做〜/ .bashrc)。