Chinaunix首页 | 论坛 | 博客
  • 博客访问: 167820
  • 博文数量: 3
  • 博客积分: 2016
  • 博客等级: 大尉
  • 技术积分: 655
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-11 18:45
文章分类
文章存档

2008年(3)

我的朋友

分类:

2008-04-18 16:02:40

让Bash的每条命令都是不同的颜色

然后向上翻,找以前的输出,太多了,就分不清楚了。

如果能用不同颜色区分每一次的命令输出就清楚多了。

在 BASH 下有一个 PROMPT_COMMAND 的变量,用于指向一个命令,在打印 PS1, 和 PS2 的时候会调用他。利用他,我实现了这个功能。

myfunctions 的内容是

none="\033[0m"
black="\033[0;30m"
dark_gray="\033[1;30m"
blue="\033[0;34m"
light_blue="\033[1;34m"
green="\033[0;32m"
light_green="\033[1;32m"
cyan="\033[0;36m"
light_cyan="\033[1;36m"
red="\033[0;31m"
light_red="\033[1;31m"
purple="\033[0;35m"
light_purple="\033[1;35m"
brown="\033[0;33m"
yellow="\033[1;33m"
light_gray="\033[0;37m"
white="\033[1;37m"

mycolors[0]="$white"
mycolors[1]="$green"
mycolors[2]="$yellow"
mycolors[3]="$light_red"
mycolors[4]="$light_blue"
mycolors[5]="$light_purple"
mycolors[6]="$light_gray"
mycolors[7]="$light_cyan"
mycolors_len=7
mycolors_cur=0
function my_dynamic()
{
echo -ne "${mycolors[$mycolors_cur]}"
mycolors_cur=$((mycolors_cur + 1))
mycolors_cur=$((mycolors_cur % mycolors_len))
}

在 ~/.bashrc 中加入

source myfunctions
export PROMPT_COMMAND='my_dynamic'

penny said:

PROMPT_COMMAND='echo -ne "\033]0;${PWD}\007"'
让term软件的标题栏显示当前路径

每次运行一个命令,就会改变提示行的颜色。最好把背景颜色设置成黑色。

阅读(1203) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~