Configuration 在tcsh提示符下更换PWD的固定部分

Configuration 在tcsh提示符下更换PWD的固定部分,configuration,command-prompt,prompt,tcsh,Configuration,Command Prompt,Prompt,Tcsh,我的提示当前显示如下: [Aug-27 14:36]/x/y/z/w/u/v/dir1/dir2/dir3> 我想做的是替换当前工作目录的常量部分路径 /x/y/z/w/u/v 与 美元工作 所以最终要展示的是 [Aug-27 14:36]$WORK/dir1/dir2/dir3> /x/y/z/w/t/u始终是我通常工作的路径,并且我有一个局部变量$work集(非常类似于home~思想) 一个直接的解决方案将是最受欢迎的,因为我真的不太了解如何设置外壳 这只是一个自定义提示,可能会让您了解如何

我的提示当前显示如下:

[Aug-27 14:36]/x/y/z/w/u/v/dir1/dir2/dir3>

我想做的是替换当前工作目录的常量部分路径

/x/y/z/w/u/v

美元工作

所以最终要展示的是

[Aug-27 14:36]$WORK/dir1/dir2/dir3>

/x/y/z/w/t/u
始终是我通常工作的路径,并且我有一个局部变量
$work
集(非常类似于home
~
思想)


一个直接的解决方案将是最受欢迎的,因为我真的不太了解如何设置外壳

这只是一个自定义提示,可能会让您了解如何创建/改进您的:

set COLOR1="%{\e[0;32m%}"
set COLOR2="%{\e[0;33m%}"
set COLOR3="%{\e[0;36m%}"
set COLOR4="%{\e[0;0m%}"
set COLOR5="%{\e[0;33m%}"
set prompt="$COLOR2\[$COLOR3%n@%M$COLOR2\:$COLOR1%~$COLOR2\] [%p %d]\n$COLOR5>$COLOR4 "
set promptchars = "%#"
提示将类似于:

[user@host:/current/dir] [current date]
>
COLOR
变量一样,您可以设置
WORK


此外,这个答案可能会有帮助:

只需将这些行放入
~/.tcshrc

set WORK='/x/y/z/w/u/v'
set dollar='$'
alias precmd 'printf "%b" "\e[36m"; date +"[%b-%d %H:%M] " | tr -d "\n";  [ `expr "$PWD" : "$WORK*"` -gt 0 ] && printf "%s" "$dollar$PWD" | sed "s|$WORK|WORK|" - || printf "%s" "$PWD"'
set prompt='%#%{\e[0;0m%} '

# The default tcsh ^L binding for screen clearing does not run precmd.
# This one does.
bindkey -s "^L" "clear\n"
precmd
是一个命令,在向您显示提示之前运行。您可以使用它使用系统上的其他可用命令自定义提示

当涉及到颜色时,您可以使用那些特殊的颜色序列来添加它们,如
\e[36m
(更多详细信息)。在我的示例中,我通过在
printf“%b”\e[36m”前面加上前缀,为整个提示启用了非粗体青色
添加到
precmd
的定义中。您可以通过这种方式添加自己的颜色,只需将类似的
printf
命令放在其中的某个位置。我通过添加
%{\e[0;0m%}关闭了颜色(恢复终端的默认文本颜色)
到提示符,提示符的结尾恰好由
提示符
变量设置。我使用
%{…%}
是因为这是设置
提示符
变量时更改内部颜色的方式。因此,基本上应该使用
printf“%b”“…”;
用于
precmd
别名和
%{…}
用于
提示符
变量


我用这些作为参考:


在Ubuntu 17.04上用
tcsh测试--version
returining
tcsh 6.20.00(Astron)2016-11-24(x86_64-unknown-linux)选项宽,NLS,DL,al,KN,SM,RH,ND,颜色,FILEC < /代码> .< /P>不使用TCSH。阅读。考虑切换到。我会研究一下,但是目前想知道一个解决方案,你是否读过“代码> TCSH < /代码>的文档?你应该阅读它然后编辑你所尝试过的问题。我猜没有简单的解决方案。(例如,你需要一些工作才能找到它)。谢谢,这很好!我唯一忘了提到的是我想用color%{\e[36m%}给这个上色。我试了一下,但似乎找不到它的位置。你能把这个添加到你的答案中吗?非常感谢,太好了。