我希望我的 shell 提示看起来像一个芝士汉堡!
如果它还显示:用户名、主机名和当前目录,那就太好了。
目前是:
michael@Castle2012-Ubuntu-laptop01:~/Dropnot/webs/rails_v3/linker/spec/controllers$
Run Code Online (Sandbox Code Playgroud)
除了重命名我的机器和目录结构......
我怎样才能让它更像:
michael:controllers$
Run Code Online (Sandbox Code Playgroud) 我想知道为什么我(base)在终端提示的左侧。
如果我source ~/.profile在终端中运行,它就会消失。
如果我关闭该终端并重新打开一个新终端,(base)是否又出现了。
我想知道它是什么。
这是我的内容.profile(不包括标准的 $path 东西和其他个性化的东西):
# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
Run Code Online (Sandbox Code Playgroud)
这是我的 .bashrc 的内容
# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac
# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options …Run Code Online (Sandbox Code Playgroud) Powerline是一个插件,用于为 vim、tmux 和 bash、zsh 的 shell 提示显示信息和漂亮的状态行。
Vim 状态行:
如何在 Ubuntu 中为不同的应用程序和 shell 安装和设置 Powerline?
是否可以更改命令提示符中的颜色user@computer,以及提示符显示的当前目录和命令部分?
我已经看到 OSX 用户做过类似的事情,但我不知道如何在 gnome 终端中做同样的事情(我只能更改前景色和背景色)。
例如,当尝试编译有错误的程序时,它会非常有用,因为长且未格式化的消息使得难以区分哪些行是命令,哪些是输出。
在我的.bashrc文件中的终端提示定义中,除其他外,我有以下代码片段:
${debian_chroot:+($debian_chroot)}
Run Code Online (Sandbox Code Playgroud)
这有什么作用,我需要它吗?
在深文件夹结构中使用终端时,有时提示会占用大部分行。有什么方法可以修剪工作目录吗?我知道我能做到
PS1="\W >"
Run Code Online (Sandbox Code Playgroud)
只打印当前目录而不是完整路径,但有没有办法有类似的东西:
/home/smauel/de...ther/folder >
Run Code Online (Sandbox Code Playgroud) 我?在我的zsh主题中使用字符来提示。但是在 tmux 中,我的提示表现得很奇怪,显示了额外的空格,如下所示:
? ~ I can type from here
? ~ Instead of here like in zsh, and sometimes when I do stuff like cd
? ~ cd ~
? ~ cdcd /
? ~ ^^These 2 chars just show up but are not actually part of command and not delete-able
Run Code Online (Sandbox Code Playgroud)
我最近发现我可以通过 .tmux 将 tmux 编码设置为 utf8 set-window-option -g utf8 on。这样做,空间问题消失了,但?字符变为_. 我怎样才能?回来tmux?
我的 zsh 主题:
PROMPT='%{$fg_bold[cyan]%} …Run Code Online (Sandbox Code Playgroud) 我正在尝试通过函数动态设置我的提示的一部分,所以在我的.bashrc我有:
asdf ()
{
echo -n $(pwd)
}
PS1="\u@\h:\w $(asdf)\$ "
Run Code Online (Sandbox Code Playgroud)
打开一个 shell 给了我我最初的期望:
$ bash
darthbith@server:~/test /home/darthbith/test$
Run Code Online (Sandbox Code Playgroud)
但是,当我更改目录时,函数定义的部分不会改变:
darthbith@server:~/test /home/darthbith/test$ cd ~/test2
darthbith@server:~/test2 /home/darthbith/test$
Run Code Online (Sandbox Code Playgroud)
我的实际目标是当我使用漂亮的颜色和所有内容时,使用git-prompt.sh脚本来显示我的 git 存储库的分支,但问题是当我更改存储库时它永远不会更新分支名称。上面这个简单的例子是我可以为我的问题想出的最简单的复制品。
在.bashrc我有整合的git-提示台词:
source ~/.git-prompt.sh
PS1="\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$(__git_ps1)\$ "
Run Code Online (Sandbox Code Playgroud) Linux环境中的$和#标志有什么区别?当我开始在 Linux 上工作时,我发现两者是不同的。我的意思是他们确实有不同的特权......?
[root@localhost ~]#和[tom@localhost ~]$。