问题标签 [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 回答
91 浏览

git - 如何使此脚本反映 PS1 上的分支状态?

首先,我知道已经回答了类似的问题,其中一些甚至被标记为重复。我已经阅读了他们的答案,虽然他们给了我一些关于我的问题的见解,但我仍然无法弄清楚如何修复我的 PS1。我也尝试阅读一些关于UNIX 引号的内容,但这也没有解决我的问题。

现在,进入实际问题:我已经有一段时间定制了 PS1,它总是工作得很好。就是这个:

但是,我觉得有必要将我当前的 git 分支添加到其中,并在网络上找到了一些解决方案。其中一个真的引起了我的兴趣,因为它会根据我的工作目录是否脏而改变分支名称的颜色。然后我开始尝试使其适应我当前现有的自定义,目前它看起来像这样:

但是,尽管当我导航到另一个分支时它确实会更改分支名称,但分支颜色不会自动更改- 只有在我手动重新获取脚本(它是 下的单独脚本~/.ps1_setup,在 内调用~/.bashrc)时才会这样做。根据我的阅读,它与单引号和双引号的使用有关,但是我看到的大多数示例都比这段代码简单得多,而且我在过去的 2 小时里一直在尝试摆弄它,得到每次都有不同的结果,但其中大多数是转义格式的标签打印混乱。

再说一次,我知道这与之前已经被问过和回答过的东西有些相关,但给出的答案不足以让我解决这个问题,所以我为“再次”提问而道歉。感谢您的帮助,好人!:)

0 投票
1 回答
396 浏览

bash - PS1 Command - Bash

I am trying to get the PS1 command working with bash.

What I am trying to do is capture the user's data and input it to change the field on the command line.

I know the command is PS1="MadMike", but what I am trying to do is the captured data from the read line and insert it into the command and then run the command

0 投票
1 回答
836 浏览

bash - Bash:如何在 PS1 中设置更改变量,更新每个提示

我已经搜索了很长一段时间,但一直找不到关于在 bash 中的 PS1 中添加变量(即变量(即更改))的帖子或任何信息,每次出现新提示时都会更新发生。具体来说,我希望提示的宽度跨越整个终端窗口,例如:

这是我到目前为止所拥有的,为了易读性而省略了颜色代码:

每当我

重置提示。

但是,我希望它能够在我不必重新加载 bash 的情况下工作。当然必须有一种方法可以做到这一点,因为 \w、\W 等是独一无二的,并且每个提示都会更新。有什么方法可以轻松做到这一点?谢谢!

7zS2

0 投票
1 回答
3638 浏览

bash - 从 Shell 脚本更改提示?

我是 shell 脚本的新手,我一生都无法弄清楚为什么这不起作用。

我正在尝试从我的 shell 脚本中更改提示。当我在终端中键入它时它可以工作,但是当我运行脚本并从菜单中选择它时什么都不做。这是我所拥有的:

0 投票
4 回答
2421 浏览

git - PS1中的条件空间

我基本上是在尝试创建一个具有以下输出的 PS1:

但是,如果我所在的文件夹不是 Git 存储库,我希望它看起来像这样:

这是我目前的 PS1:

当我在 Git 存储库中时,它给了我想要的输出,但是当我在不在 Git 存储库中的文件夹中时,输出如下所示:

如果它不是 Git 存储库,我真的不想要那个空间。

有什么方法可以在我的 PS1 中指定吗?

0 投票
1 回答
45 浏览

terminal - 只能在某些目录/子目录中工作时更改终端的 PS1 吗?

我想更改 PS1,但前提是我在特定目录中工作。这可能吗,我该怎么做?

0 投票
2 回答
264 浏览

linux - 在开始会话之前在函数中自定义 linux 终端 PS1 变量

我经常从终端的不同选项卡启动与服务器的终端会话。我想创建一个函数,在开始会话之前它会更改选项卡的标题,以便我可以轻松识别哪个选项卡打开了哪个会话。

让我们假设我的会话是 ssh 会话。当我输入终端

其中 fn 是在 ~/.bashrc 中定义的函数:

终端启动会话,并且仅在 ssh 会话结束后更改选项卡的标题。我猜这是因为会话在 fn 函数中打开,并且只有当函数返回时 PS1 才会实现。如何在会话开始前更改标题/更新 PS1 变量?

0 投票
1 回答
102 浏览

multithreading - 如何在 bash / 替换文本 / CPU 使用情况下使函数在后台工作

我一直在玩 bashrc,我一直想看到的一件事是我的 cpu 使用百分比。我决定在我的 PS1 中设置这些数据。问题是要准确估计我的 CPU 使用率,我需要执行需要等待至少 0.5 秒的操作。

结果,我的新命令行只显示在 CPU 计算结束时,即 0.5 秒后,这实在是不能接受。为了解决这个问题,我认为我可以使用一个线程来进行 CPU 计算并只在最后显示它,但我不知道该怎么做。

问题之一是我在 CPU 百分比之后显示其他信息,所以我不知道是否有可能延迟 CPU 显示同时仍显示命令行的其余部分。我想也许我可以显示一个临时字符串??.??,然后用实际值替换它,但我不知道该怎么做,因为如果我快速输入命令,那么它的位置??.??可能会改变(例如,在 a 中输入 ls 5 次排非常快)。

也许对我的问题有更简单的解决方案,例如以其他方式计算 CPU 百分比?

我的 CPU 百分比计算功能:

我如何在 bashrc 中调用它:

0 投票
1 回答
21 浏览

bash - 当我尝试移至上一个命令时,它涵盖了 iterm 中的当前目录根

嗨,我是 OSX 命令行界面的新手。在我开始编码之前,我改变了我喜欢的 bash 颜色。

它大部分工作正常,但是当我使用向上和向下键移动到上一个命令时,上一个命令会像这样覆盖当前目录。

是否有任何文档可以让我了解有关 PS1 设置的更多信息并解决此问题?

提前致谢。

0 投票
1 回答
1126 浏览

bash - Bash - 文件局部变量

我刚刚写了一个小文件来设置我的 PS1 变量。该文件来自我的.bashrc。现在我有几个关于这种方法的问题。

但首先是代码:

设置提示


.bashrc


我的问题:

  • 这种方法会减慢我的 bash 启动速度吗?我应该只写一行难看的代码而不是做这些变量定义/采购吗?
  • 我注意到,在setprompt中定义的变量仍然在我的.bashrc中定义。我不喜欢这种行为,因为.bashrc的编辑器在采购setprompt时定义变量并不明显。这只是 的行为source吗?我能做些什么呢?

编辑

这是我现在使用的方法(由Tripleee推荐):

getPrompt.sh

.bashrc