Questions tagged «prompt»

交互式外壳程序显示的字符串表示该外壳程序正在等待用户输入。

1
在脚本中使用sudo时,如何通过GUI提示询问密码?
我将Trisquel GNU / Linux与GNOME闪回桌面环境一起使用。我需要一个GUI密码提示符,以便用户sudo在脚本中执行命令。示例考虑以下脚本: zenity --question --text="Do you want to install this package?" if [[ $? -eq 0 ]]; then sudo apt-get install package else zenity --warning fi 将以以下方式(运行)执行,即不在终端内执行: 因此,需要输入密码才能运行命令,sudo否则将无法完成工作。 因此,如何通过GUI提示询问密码?

3
如何在不中断行长计算的情况下将命令包含在Bash的PS1中?
Tonin 在我的默认提示中指出了一个错误。最小示例: 设置PS1: PS1='$(exit_code=$?; [[ $exit_code -eq 0 ]] || printf %s $(tput setaf 1) $exit_code $(tput sgr0) " ")$ ' 此时,提示如下所示: $ 现在通过运行触发退出代码输出: false 现在,提示在行首包含红色的退出代码: 1 $ 按Ctrl- r。 输入“ false”。现在,提示仅包含搜索: (reverse-i-search)`false': false 按Enter。 现在,最终的终端历史记录包含以下内容: 1 $ch)`false': false 预期产量: 1 $ false 也就是说,历史记录搜索输出似乎与提示混合在一起,并且隐藏了实际运行的命令。 我尝试通过使用PROMPT_COMMAND解决此问题: set_exit_code() { exit_code=$? [[ $exit_code …
13 bash  prompt 

2
可以通过音频设备(摩尔码或类似代码)配置登录TTY吗?
我日常工作中最痛苦的方面之一是需要偶尔调查分散在世界各地无法访问外部网络的远程机器上的问题。有时,本地员工可能会通过3G或类似的调制解调器捆绑以提供访问权限,但由于信号不足或现场缺乏技术能力,通常这是不可能的。在这些情况下,我必须用电话联系当地技术人员(有时是管理员),与我一起工作,输入我背诵给他们的命令,并以输出作为响应,通常是那些Linux有限甚至没有Linux甚至没有计算机的人经验。通常,要找到一个更合格的技术人员到现场,需要包机。 我可以确认,通过在vi中编辑文件来交谈的人不知道'slash'和'backslash'之间的区别,如何保持移位以生成冒号而不是分号,这是非常痛苦的。“好吧,现在显示的是一个弯曲的东西,然后是一种看起来很怪异的线条,然后是另一个弯曲的东西”。哦,它以我未读过的某种错误消息在我身上发出哔哔声。 基本上,我在现场使用的人是一个非常慢的电话->终端转换器,错误率极高。我的主意是裁掉中间人,在计算机上使用扬声器和麦克风,然后告诉技术人员将手机固定在机器上,然后将其用作老式的声学耦合“调制解调器”。在我的计算机上运行一个终端程序,该程序会将我的线路转换为可以通过电话传输到电话机上的某些音频序列,并转换回命令,然后将其输出转换为音频电话等,实际上为我提供了非常慢的终端。有几种传输数据的方法,这些数据可能在手机传输后仍然存在,例如摩尔斯电码或OliviaMode。 我希望获得有关软件包的信息,以整体上或以各种方式来完成此解决方案,或者提供其他有关如何完成此任务的想法。除了上述提到的“ OliviaMode”(可以用作传输协议)外,Google并没有任何用处。
13 audio  prompt  tty 

2
根据用户或zsh中的root更改提示颜色
在zsh中,您可以%#在您的PS1(或任何PROMPT变量)中使用a,这基本上意味着%在用户情况下显示,#在root 用户情况下显示。我想知道是否有任何方法可以影响此效果,从而使%或#根据用户或根更改颜色(根为红色,用户为蓝色),显而易见的方法是更改PS1根中的,~/.zshrc但是考虑这已经是一个特殊的符号,我想知道是否可能没有办法PS1对两者都使用相同的东西…… %#zsh 特有的东西(我敢肯定,还有其他一些我也可以这样做的技巧) if语句)。
13 shell  zsh  colors  prompt 

2
如何更改tty登录提示?
需要明确的是,我不是指/etc/issue(在提示之前显示)或/etc/motd(在登录后显示),而是指提示本身,当前 hostname login: 从好的方面来说,我正在运行Arch Linux,但我相信答案可能会是跨发行版的。
12 terminal  login  prompt  tty 



1
如何停止bash shell PS1颜色在命令结束时停止?
我有一个自定义的PS1颜色,其中实际的shell命令使用不同的颜色,只是为了快速查看输入的命令并将其与命令输出本身分开。 假设PS1中的颜色针对命令提示符设置为“蓝色”,而我的外壳中的默认颜色为白色。 我输入命令,例如ls,(ls -l涂成蓝色) 它生成的输出,第一行仍然是蓝色 所有剩余的行都是白色的 我想要的是命令后的所有输出均为“ white”。 另一个例子: 我输入命令“ cat”,颜色为蓝色 输出到来,整个输出为蓝色 我希望输出为“白色”,同时保持我键入“蓝色”的命令提示符 在某些命令上很好,在其他命令上,相同的颜色溢出到输出的第一行,然后插入默认颜色,而在其他一些命令上,整个输出(例如cat)具有相同的颜色。 有没有一种方法可以只将我键入的命令保留为一种颜色,其余的保留为默认颜色? 我在OSX上。 编辑#1 这是@derobert在评论中链接到的屏幕快照,该屏幕快照显示了我在寻找什么。
12 bash  prompt 

1
清除bash中的旧提示行以节省滚动空间
我的终端主题曾经是这样, 但是我认为提示浪费了很多空间。后来我有了一个主意,每次运行命令时都可以清除提示。我正在使用bash,解决方案之一是使用该preexec_invoke_exec功能。 我使用以下命令清除最后一个提示字符: echo -ne "\033[1A\033[K\033[1A\033[K\033[31;1m$ \033[0m" 这样终端很干净 但是现在我的问题是,如果我想在一行中使用多个命令(例如,当我使用)时会出现问题for i in ...。 这是我的.bashrc中函数的完整版本, preexec () { echo -ne "\033[1A\033[K\033[1A\033[K\033[31;1m$ \033[0m"; echo -n "$1"; echo -ne " \033[37;2m["; echo -n "$2"; echo -ne "]\033[0m\n"; } preexec_invoke_exec () { [ -n "$COMP_LINE" ] && return # do nothing if completing [ "$BASH_COMMAND" …
11 bash  shell  terminal  prompt 

5
KornShell中的彩色提示
根据StackOverflow的这篇文章,在KornShell中可能有一个彩色的提示。我还无法弄清楚该怎么做。我可以使用颜色: echo -e "\033[34mLinux\033[00m" 给出蓝色的“ Linux”输出,如下所示: printf "\033[34mLinux\033[00m" 但是,当我将转义代码合并到PS1提示变量中时,它们不会被转义。我需要怎么做才能获得彩色提示?除了成为让人眼花something乱的东西之外,我发现在视觉上解析输出时,彩色提示很有用。
11 colors  prompt  ksh 

6
重击:在提示中显示退出状态:
GREEN="\e[1;32m" RED="\e[1;31m" NONE="\e[m" get_exit_status(){ es=$? if [ $es -eq 0 ] then echo -e "${GREEN}${es}${NONE}" else echo -e "${RED}${es}${NONE}" fi } get_path(){ #dummy function echo "PATH" } PROMPT_COMMAND='exitStatus=$(get_exit_status)' 以下内容为我提供了正确的exitStatus,但未扩展颜色变量: PS1='${RED}\h $(get_path) ${exitStatus}${NONE} ' 但是,下面的一种给我颜色,但是退出状态不会更新: PS1="${RED}\h $(get_path) ${exitStatus}${NONE} " 什么是正确的方法?如何解决此问题,使exitStatus和color都能正常工作?
11 bash  prompt 

4
每次显示新提示时,Bash提示执行命令
我在bash中有以下提示,其中显示了当前的git分支: PS1+="$(git_prompt)" #git_prompt is a function in my .bashrc 当我获取.bashrc时有效,但当我更改分支时无效,因此PS1 var仅在我获取.bashrc时得到评估,但每次显示新提示时都应对其进行评估。如何使用bash 4.3做到这一点?
11 bash  prompt 


2
如何使zsh中的RPROMPT在每次输入时自动更新?
我RPROMPT设置为使用显示svn信息vcs_info。它读RPROMPT=${vcs_info_msg_0_}。vcs_info被称为使用precmd()。但是,当我更改目录时,RPROMPT不会更新。仅当我再次调用提示符(通过源〜/ .zshrc或提示符)并且在chdir上不变时,它才起作用,除非再次调用提示符。有什么办法可以改变这种行为?

3
tmux不着色PS1提示
我最近决定更改PS1变量,以适应​​一些漂亮的日晒颜色,以使我的终端观看愉悦。当不在tmux会话中时,一切都很好!彩虹,小马,独角兽和明显的提示!凉! 问题出在tmux之内。我已经验证了PS1的值是我期望的值,并且与tmux未运行时的值相同,即\[\033]0;\w\007\]\[\[\]\]\u\[\]@\[\[\]\]\h\[\]:\[\]\W\[\]$ \[\]。 我的.bash_profile中的所有别名等也都按预期运行。tmux还在显示颜色而不会发生意外,echo -ne "\033[1;33m hi"正如预期的那样gls --color。 我的.bash_profile中当前相关的行是export PS1="\[\033]0;\w\007\]\[\[\]\]\u\[\]@\[\[\]\]\h\[\]:\[\]\W\[\]$ \[\]",尽管最初我是在.bash_prompt文件中寻找一个脚本来处理一些条件的,等等。我试图恢复到较简单的版本。 执行bash将导致提示变色,但是必须在每个窗格中完成。export PS1=[that long string I've already posted]将不会。 我的.tmux.conf如下: set-option -g default-command "reattach-to-user-namespace -l /usr/local/bin/bash" set -g default-terminal "xterm-256color" set-window-option -g automatic-rename on bind '"' split-window -c "#{pane_current_path}" bind % split-window -h -c "#{pane_current_path}" bind c new-window -c "#{pane_current_path}" .bash_profile的相关部分: …
11 bash  osx  tmux  prompt 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.