打开~/.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下的界面就美观多了.

Linux终端更改提示符的更多相关文章

  1. Linux终端更改字体

    1 概述 这里的终端是指通过F1-F6/F2-F7进入的纯命令终端. 修改字体可以通过setfont命令. 2 查看字体 可以通过查找目录consolefonts来确定本地机器上的字体位于哪里: fi ...

  2. 修改Linux终端提示符颜色

    修改Linux终端提示符颜色 作者:Eric 微信:loveoracle11g [root@linux-node2 ~]# tail -1 .bashrc PS1='[\[\033[1;31m\]\u ...

  3. Linux终端那件事儿

    我们将会讨论如何更好的控制用户终端:也就说是键盘输入与屏幕输出.除了这些,我们还会了解我们编写的程序如何由用户处读取输入,即使是在输入重定向的情况下,以及确保输出到屏幕的正确位置.这里所提供的一些底层 ...

  4. linux 中更改用户权限和用户组的命令chmod,chgrp实例

    linux 中更改用户权限和用户组的命令实例; 增加权限给当前用户 chmod +wx filename chmod -R 777 /upload 用户组 chgrp -R foldname zdz ...

  5. PS1应用之——修改linux终端命令行各字体颜色

    最近在学习linux操作系统(CentOS 6 & CentOS 7).觉得linux终端命令行全部为白色,会经常导致命令与输出内容难以分辨.于是上网找到修改linux终端命令行颜色的方法,发 ...

  6. linux终端terminal个性化配置(转)

    http://blog.csdn.net/pipisorry/article/details/39584489 {本文介绍Linux终端字体颜色设置.终端提示符显示内容设置.自定义alias命令} l ...

  7. 12款最佳Linux命令行终端工具, 20款优秀的 Linux 终端仿真器

    12款最佳Linux命令行终端工具     如果你跟我一样,整天要花大量的时间使用Linux命令行,而且正在寻找一些可替代系统自带的老旧且乏味的终端软件,那你真是找对了文章.我这里搜集了一些非常有趣的 ...

  8. 修改linux终端命令行颜色

    进入修改:vim /root/.bashrc 1.PS1 要修改linux终端命令行颜色,我们需要用到PS1,PS1是Linux终端用户的一个环境变量,用来说明命令行提示符的设置.在终端输入命令:#s ...

  9. 20个Linux命令及Linux终端的趣事

    20个Linux命令及Linux终端的趣事 . 命令:sl (蒸汽机车) 你可能了解 ‘ls’ 命令,并经常使用它来查看文件夹的内容.但是,有些时候你可能会拼写成 ‘sl’ ,这时我们应该如何获得一些 ...

随机推荐

  1. 增量式PID计算公式4个疑问与理解

    一开始见到PID计算公式时总是疑问为什么是那样子?为了理解那几道公式,当时将其未简化前的公式“活生生”地算了一遍,现在想来,这样的演算过程固然有助于理解,但假如一开始就带着对疑问的答案已有一定看法后再 ...

  2. Codeforces 486E LIS of Sequence --树状数组求LIS

    题意: 一个序列可能有多个最长子序列,现在问每个元素是以下三个种类的哪一类: 1.不属于任何一个最长子序列 2.属于其中某些但不是全部最长子序列 3.属于全部最长子序列 解法: 我们先求出dp1[i] ...

  3. 洛谷P1126机器人搬重物[BFS]

    题目描述 机器人移动学会(RMI)现在正尝试用机器人搬运物品.机器人的形状是一个直径1.6米的球.在试验阶段,机器人被用于在一个储藏室中搬运货物.储藏室是一个N*M的网格,有些格子为不可移动的障碍.机 ...

  4. AC日记——大小写字母互换 openjudge 1.7 14

    14:大小写字母互换 总时间限制:  1000ms 内存限制:  65536kB 描述 把一个字符串中所有出现的大写字母都替换成小写字母,同时把小写字母替换成大写字母. 输入 输入一行:待互换的字符串 ...

  5. jmeter 和 ajax

    https://bitbucket.org/blazemeter/ajax-sampler/downloads/blazemeter-ajax-sampler-1.0-SNAPSHOT.jar 下载一 ...

  6. Eclipse自动打开实现类原型的工具

    http://eclipse-tools.sourceforge.net/implementors/ I always use this implementors plugin to find all ...

  7. bzoj3223 文艺平衡树 (treap or splay分裂+合并)

    3223: Tyvj 1729 文艺平衡树 Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 3313  Solved: 1883 [Submit][S ...

  8. CycleRotationView:自定义控件之轮播图

    CycleRotationView:自定义控件,主要功能是实现类似与各种商城首页的广告轮播图.其实像这种比较常见的自定义控件早就满大街了,虽然说"不要重复发明轮子",但是不代表不用 ...

  9. SQL/LINQ/Lamda

    SQL LINQ Lambda SELECT * FROM HumanResources.Employee from e in Employees select e Employees   .Sele ...

  10. 获取assemblies信息in .net core

    using System; using System.Linq; using System.Reflection; using System.Runtime.Loader; using Microso ...