Linux修改终端提示符
打开~/.bashrc可以看到命令提示的内容为:\u@\h\w\$
\u表示用户名,\h表示主机名,\w表示当前目录,\$表示命令提示符(普通用户$,超级用户#)
这个命令提示符有点长,很碍事,\u@\h是可以删除的,只显示\w\$就很好
改为:PS1='\[\033[1;3;32m\]\w\[\033[31m\]\$\[\033[0m\]'
如果改为PS1='\033[1;3;32m\]\w\033[31m\]\$\033[0m\]',系统会错误的理解这个字符串的长度,导致系统对光标的位置理解错误,就会出现长命令回到行首的情形.下面这个链接对这个问题讲的格外清楚http://mywiki.wooledge.org/BashFAQ/053#CA-3f52bac3b5ad40d98d0fa76a95be9049141bfced_5
(这个网站可谓是学习shell的理想场所,讲解全面而又清晰有层次)
转义字符必须放在[和]之间,这个规则只适用于定义PS1时.若在其他地方,要把转义序列放在\001和\002之间.
关于颜色转义,运行一下下面这个脚本便全知道了
#!/bin/bash
cat << haha
You can write like this :
\033[one;two;three m
This is called ansi color.
"echo -e " you can use escapes !
for more infomation ,try "man echo"
haha
#character attributes
a=(normal 0
bold 1
dim 2
italic 3
under 4
blink 5
six 6
revert 7
conceal 8
delete 9
)
#forecolor
b=(
black 30
red 31
green 32
yellow 33
blue 34
magenta 35
cyan 36
white 37
)
#backcolor
c=(
black 40
red 41
green 42
yellow 43
blue 44
magenta 45
cyan 46
white 47
)
function show(){
while test $# -gt 0;do
echo -e "\033[${2}m weidiao\033[0m $1 $2" | column -t
shift 2
done
}
show ${a[*]}
echo ===============fore color ======================
show ${b[*]}
echo ================back color ====================
show ${c[*]}
echo ================random ========================
echo -e "\033[${b[3]};${c[1]}m weidiao is great\033[0m"
在windows下,控制台无法选择漂亮字体,只有点阵字体和宋体非常难看。下载一个cmder(去github上的realease中下载),解压就能用:设置命令行提示符,在vendor文件夹下的init.bat中,里面的颜色转义跟上面所述差不太多。我的prompt:@prompt $E[1;32;40m$P$E[1;31;40m$$$E[0m
再把背景颜色设置成Ubuntu背景色:rgb(44,0,30)就完美了.而cmder不支持背景色,但支持背景图片,那就制作一张纯色的ubuntu背景图片.
在使用python时,IDLE没有代码提示,非常难用.有两个选择bpython和ipython,但是bpython对windows的支持不够完善,所以还是用ipython,但是ipython在控制台下的界面比较丑,而在cmder下的界面就美观多了.
.bash_profile和.bashrc是不一样的,最好把相同的内容在这两个文件里面复制一遍,这样就不用考虑它俩有啥区别了.
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
# 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
HISTCONTROL=ignoreboth
# append to the history file, don't overwrite it
shopt -s histappend
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
#shopt -s globstar
# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color) color_prompt=yes;;
esac
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes
if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt
PS1='\[\033[1;3;32m\]\w\[\033[31m\]\$\[\033[0m\]'
# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
# Add an "alert" alias for long running commands. Use like so:
# sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
#设置颜色
export LS_OPTIONS='--color=auto'
export CLICOLOR="yes"
export LSCOLORS='CxfxcxdxbxegedabagGxGx'
Linux修改终端提示符的更多相关文章
- ubuntu系统修改终端提示符及设置颜色高亮
Linux终端大家想必都清楚吧,最近在使用的时候发现在进入到某个文件夹目录比较深的层次后,终端提示的绝对路径很长,这样给人的感觉很不习惯,在这里给大家介绍下如何修改终端的提示,顺便介绍下提示符的颜色: ...
- linux 修改终端颜色
要想修改终端的颜色,可以使用修改PS1环境变量的方式,也可以通过命令setterm来进行设置. 一.PS1 转自:修改linux终端命令行颜色 1.PS1 要修改linux终端命令行颜色,我们需要用到 ...
- linux 命令终端提示符显示-bash-4.1#解决方法
昨天在配置linux,突然发现root登录的CRT的终端提示符显示的是-bash-4.1# 而不是root@主机名 + 路径的显示方式.搞了半天也不知道为什么出现这种情况.今天终于搞定这个问题, 原因 ...
- linux 命令终端提示符显示-bash-4.2#解决方法
原地址:http://blog.csdn.net/liulihui1988/article/details/52796395 终端提示符显示的是-bash-4.2# 而不是root@主机名 + 路径的 ...
- Linux美化——终端提示符
1. PS1变量简介[1] PS1是Linux终端用户的一个环境变量,用来说明命令行提示符的设置. 可以使用 man bash命令查看bash手册,找到该变量支持的特殊字符,以及这些特殊字符的意义: ...
- Linux修改终端显示前缀及环境变量
Linux终端前面默认显示一长串,如: [work@aaa.baidu.com dir]$ 这是由PS1环境变量决定的: [work@aaa.baidu.com dir]$ echo $PS1 [\u ...
- Linux 修改终端显示bash-1.4$
先取得root权限,然后在终端如下操作[root@host]$su -然后输入密码接着[root@host]#PS1='[\u@\H \W]\$' 你取得root权限后在,在终端命令下输入这个,一定要 ...
- Linux 修改终端命令提示符颜色
相信很多人已经看厌了Linux已成不变的命令提示符的颜色,多数人要么使用默认的绿色,要么在使用PUTTY的时候设置成绿色的,不知道是否有人想到提示符可以设置成其他的颜色呢,本文就说明命令提示符变量PS ...
- Linux下修改环境终端提示符
Linux修改环境变量PS1(命令行提示符),可以使用vi编辑/etc/bashrc或/etc/profile文件,在最后加上: export PS1='[\u@\h \W]\$ ' 即可,其中\u显 ...
随机推荐
- C# 二种方法控制系统音量/麦克风大小
场景:在做播放设备的时候需要控制音量的大小,下面几种方法将满足你的要求 方法一: 改变系统音量设置 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ...
- 汇总c#.net常用函数和方法集
1.DateTime 数字型 System.DateTime currentTime=new System.DateTime(); 1.1 取当前年月日时分秒 currentTime=System.D ...
- 判断checkbox选中的个数
直接看例子吧: shippingAddressList 为一个集合 <c:forEach items="${shippingAddressList }" var=" ...
- SearchBySql
Java: public List<Accountingdisclosure> searchAccountingdisclosuresBySql(String sqlStr)throws ...
- Kernel Memory Layout on ARM Linux
这是内核自带的文档,讲解ARM芯片的内存是如何布局的!比较简单,对于初学者可以看一下!但要想深入理解Linux内存管理,建议还是找几本好书看看,如深入理解Linux虚拟内存,嵌入系统分析,Linux内 ...
- yield python
原文:http://pyzh.readthedocs.io/en/latest/the-python-yield-keyword-explained.html 3. (译)Python关键字yield ...
- 整数对A满足二叉查找树,B满足最大堆
1 题目 给出一组整数对 { (a[0], b[0]), (a[1], b[1]) ... (a[n-1], b[n-1]) },全部 a 值和 b 值分别不反复(随意 i != j 满足 a[i] ...
- Red Hat Enterprise Linux AS release 4 yum源
$sudo vim /etc/yum.conf [main] cachedir=/var/cache/yum debuglevel=2 logfile=/var/log/yum.log pkgpoli ...
- ASP入门(十三)-Server对象
Server 对象用于处理服务器上的一些特殊任务,例如,创建组件实例.获取文件路径.执行ASP脚本文件等. Server 对象是体现 ASP 强大功能的一个对象,之前介绍的对象都是针对获取.请求以及简 ...
- 小议IE10下的DrawToBitmap方法
在完成博文“PS网页设计教程XXIV——从头设计一个漂亮的网站”后. 出于习惯,打开之前“利用Webbrowser类实现超长网页的截屏的实现(解决报错不能截取的难题)”中的代码的程序,截取博文作为资料 ...