问题标签 [ps1]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
289 浏览

linux - Linux 终端 PS1

我不确定这是否可能,但我无法在其他任何地方找到答案,甚至无法找到尝试过的人,但我目前的 PS1 是这样的:

它正在显示并在打开终端时工作,但是我想知道是否可以在命令完成后清除屏幕(如果可能,使用类似于 windows cmd 'pause' 命令的提示)以便它不会重复或显示在窗口的底部

如果它有所作为,我正在运行 Manjaro XFCE。

谢谢!

0 投票
1 回答
496 浏览

bash - Bash $PS1 麻烦(ubuntu)

所以我有一个脚本.bashrc用于自定义我的提示(见下文)。

我的问题:为什么每当我cd到 git repo 时路径都不会被替换?(如果我在 repo 中启动 bash 提示符,它会这样做”

我正在使用 Ubuntu 14.04


更新:

经过大量工作使其恰到好处,他是我的结果:Custom $PS1

感谢所有帮助过的人!

0 投票
0 回答
92 浏览

bash - PS1 提示符中的 \[ 和 \] 有什么意义?

根据man bash,在PS1环境变量中(定义shell提示符):

根据我见过的各种例子,我应该用\[and包围非打印字符序列\]- 但我是否包含它们似乎没有任何区别!

例如:

似乎与以下工作没有什么不同:

(即相同但删除\[\]删除)。

那么以这种方式封闭非打印字符序列有什么好处呢?是否用于输出到哑终端(我永远不需要这样做),以便可以忽略非打印字符?(大概PS1在非交互式会话中被忽略,所以我猜它不能用于编写脚本。)

0 投票
2 回答
189 浏览

bash - 更改目录时,bashrc不会在函数中导出变量

我有几个我在做的项目。我宁愿在导航到该特定目录时设置它,而不是为每个项目的位置设置别名。每个项目都是一个 git repo,当我导航到它时,我已经有一种机制可以将当前分支名称附加到 $PS1。

在我的 .bashrc 中,我调用了一个函数: parse_git_branch 以附加到命令提示符:

parse_git_branch 在我的 .basrhc 末尾定义:

如果 GIT_BRANCH 不为空,我会获取一个简单的脚本 ~/bin/cur,它为 pwd 设置别名:

获取 cur 时,未设置别名。但是,调试消息确实显示正确。

我相信这是因为 shell 脚本在我当前环境的“外部”运行。当从命令行调用 source cur 时设置别名。

那么,为什么从我的 .bashrc 中的“parse_git_branch”调用时没有设置别名?

谢谢!

0 投票
2 回答
6504 浏览

linux - Bash printf %q 无效指令

我想在我的 .bashrc 文件中更改我的 PS1。我发现了一个使用带有 %q 指令的 printf 来转义字符的脚本:

问题是我收到此错误:

任何想法 ?也许是另一种逃避角色的方式?

0 投票
2 回答
4880 浏览

bash - 根据路径动态更改 bash 提示

我想知道是否可以根据当前路径或pwd值更改PS1?

例如:

但如果我在另一个目录中:

先感谢您!

0 投票
5 回答
1715 浏览

bash - 检测空命令

考虑一下这个 PS1

这是几个命令的结果

第一行显示没有预期的状态,接下来的两行显示正确的退出代码。但是在第 3 行,只有 Enter 被按下,所以我希望状态消失,就像第 1 行一样。我该怎么做?

0 投票
1 回答
1656 浏览

linux - 使用 PS1 设置通过 ssh 设置不同的终端背景颜色

我想使用我的 .bashrc 文件中的 PS1 设置来根据我是在本地机器上还是使用 ssh 来更改终端的颜色。

我在本地机器和 ssh 服务器上的当前 .bashrc 文件是(默认): PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

我试过添加"\e[40m"到最后,但只改变了终端的部分背景,中间留下了一个黑条

我将如何将 PS1 设置更改为,例如,我的本地终端是深蓝色而 ssh 终端是深灰色?

谢谢!

0 投票
1 回答
157 浏览

bash - bash颜色设置搞砸了

如果使用更简单的格式设置颜色,如 for green,一切都会正常工作。但是,如果它们是使用更复杂的格式设置的,比如 in bluepurple它会工作并且一开始看起来是正确的,但是如果我浏览一些以前的命令等,突然该行会跳到一个非常奇怪的地方,提示文本会是走了。

这里发生了什么?

0 投票
1 回答
89 浏览

bash - 自定义 PS1:所有目录的常用 PS1,不包括带有子目录的单个目录

考虑具有任意子目录的某个目录的固定绝对路径:

以及不是上述子目录的任意其他目录directory/other/path

我想在终端中看到以下内容:

最后一行是典型情况,但其他行是

如何实施?

PS 路径可以包含空格。