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

Linux终端更改提示符的更多相关文章
- Linux终端更改字体
1 概述 这里的终端是指通过F1-F6/F2-F7进入的纯命令终端. 修改字体可以通过setfont命令. 2 查看字体 可以通过查找目录consolefonts来确定本地机器上的字体位于哪里: fi ...
- 修改Linux终端提示符颜色
修改Linux终端提示符颜色 作者:Eric 微信:loveoracle11g [root@linux-node2 ~]# tail -1 .bashrc PS1='[\[\033[1;31m\]\u ...
- Linux终端那件事儿
我们将会讨论如何更好的控制用户终端:也就说是键盘输入与屏幕输出.除了这些,我们还会了解我们编写的程序如何由用户处读取输入,即使是在输入重定向的情况下,以及确保输出到屏幕的正确位置.这里所提供的一些底层 ...
- linux 中更改用户权限和用户组的命令chmod,chgrp实例
linux 中更改用户权限和用户组的命令实例; 增加权限给当前用户 chmod +wx filename chmod -R 777 /upload 用户组 chgrp -R foldname zdz ...
- PS1应用之——修改linux终端命令行各字体颜色
最近在学习linux操作系统(CentOS 6 & CentOS 7).觉得linux终端命令行全部为白色,会经常导致命令与输出内容难以分辨.于是上网找到修改linux终端命令行颜色的方法,发 ...
- linux终端terminal个性化配置(转)
http://blog.csdn.net/pipisorry/article/details/39584489 {本文介绍Linux终端字体颜色设置.终端提示符显示内容设置.自定义alias命令} l ...
- 12款最佳Linux命令行终端工具, 20款优秀的 Linux 终端仿真器
12款最佳Linux命令行终端工具 如果你跟我一样,整天要花大量的时间使用Linux命令行,而且正在寻找一些可替代系统自带的老旧且乏味的终端软件,那你真是找对了文章.我这里搜集了一些非常有趣的 ...
- 修改linux终端命令行颜色
进入修改:vim /root/.bashrc 1.PS1 要修改linux终端命令行颜色,我们需要用到PS1,PS1是Linux终端用户的一个环境变量,用来说明命令行提示符的设置.在终端输入命令:#s ...
- 20个Linux命令及Linux终端的趣事
20个Linux命令及Linux终端的趣事 . 命令:sl (蒸汽机车) 你可能了解 ‘ls’ 命令,并经常使用它来查看文件夹的内容.但是,有些时候你可能会拼写成 ‘sl’ ,这时我们应该如何获得一些 ...
随机推荐
- maven项目下jsp文件中el表达式失效问题
本来是为了写个springmvc的小demo,雏形搭建起来后想起来做成maven的好了,就重新建的maven项目,坑就从这里开始了... maven创建web项目默认使用的是web 2.3版本,web ...
- 浅析Java中的访问权限控制
浅析Java中的访问权限控制 今天我们来一起了解一下Java语言中的访问权限控制.在讨论访问权限控制之前,先来讨论一下为何需要访问权限控制.考虑两个场景: 场景1:工程师A编写了一个类ClassA,但 ...
- getline()函数
这是一篇关于getline()函数的博客,以总结对输入输出流的掌握,不再在这些问题上栽跟头~ -------------------------- 1.首先我们知道,getline()函数的基本作用, ...
- 第5章 绘图基础_5.1-5.4 GDI绘图
5.1 GDI的原理和结构 (1)提供一种特殊机制彻底隔离应用程序与不同输出设备(eg.显示器或打印机),以便支持 与设备无关的图形. 光栅设备(如显示器.激光打印机):图像是由点构成的矩阵 图形输出 ...
- Hibernate一对一关系映射
Hibernate提供了两种一对一映射关联关系的方式: 1)按照外键映射 2)按照主键映射 下面以员工账号表和员工档案表(员工账号和档案表之间是一对一的关系)为例,介绍这两种映射关系,并使用这两种 映 ...
- angular留言板
今天使用angularJs写了一个留言板,简单的享受了下angular处理数据的双向绑定的方便:注释已经都写到行间了 <!DOCTYPE html> <html lang=" ...
- .Net Core 控制台程序错误:Can not find runtime target for framework '.NETCoreApp,Version=v1.0' compatible with one of the target runtimes: 'win10-x64, win81-x64, win8-x64, win7-x64'.
.Net Core 控制台程序错误:Can not find runtime target for framework '.NETCoreApp,Version=v1.0' compatible wi ...
- Android 中布局设置导致的TextView不显示的问题
将TextView放入TableLayout中,设置TextView的Layout Witdh/Layout Height 为Wrap Content或其他大小,导致TextView内容无法显示,改为 ...
- jQuery动态产生的铵钮怎样实现事件处理
在ASP.NET MVC环境中,实现一个小功能,就是希望使用jQuery动态一个铵钮,并让用户能执行这个铵钮的click事件.为了更好的理解与对比,Insus.NET在视图中先写一个静态的,执行相似的 ...
- VS2013 抛出 stackoverflow exception 的追踪
本公司使用VWG.Caslte ActiveRecord.CSLA.net .Quantz.net 等组件做为公司的开发基础,自2007年以来,一直工作正常,但最近(2015.12月)以来,打开MDA ...