bash有一些很好用但已经常被人忽略的小技巧,谨以此文记录下……

1. 给history命令加上时间

history的命令很好用,他可以记录我们之前做了哪些操作,有了这些记录,我们可以很快捷的重复执行,这种快捷性在所执行命令很长很复杂的情况下尤为明显,快捷高效的利用history,是小白到大白的必经之路。
但这里不讲history命令,而是给history加上一个时间,明确告诉我们,某个命令是在什么时候敲入的。
操作如下:

$ export HISTTIMEFORMAT="%F %T  "

2. 定制化PS1

PS1,是linux系统中的一个内置变量,可以echo看一下, 看上去像是乱码,其实解析出来就很规整,我这里就是这个——[root@lf4tools ~]#,也就是终端命令提示符

[root@lf4tools ~]# echo $PS1
[\u@\h \W]\$

那么,当我们连接的机器成百上千的时候,是否可以定制化提示符,而达到见符知意的效果呢?比如,我想让生产环境的提示符显示成红色,这样我就不会轻易执行rm;比如我一看提示符就知道这个机器是一台mysql服务器等等……

答案是肯定的,我们就让提示符提示相关信息并有颜色,操作如下:

$ PS1='\e[31m[MINDOC服务器\u@\h \W]\$\e[0m'

~/.bash_profile文件,让设置永久生效

通过上面的两步操作,可以给自己带来显而易见的便利,可以把这两个设置放到bash_profile文件中,使其永久生效。

$ vi ~/.bash_profile
在此文件中加入以下两行:
export HISTTIMEFORMAT="%F %T "
export PS1='\e[31m[MINDOC服务器\u@\h \W]\$\e[0m'

3. bash中的颜色

bash可以自定义颜色,这是众所周知的事情,但是我对这块的需求并不是很强烈,所以就忽略了,此文自定义PS1中刚好提到,故简要记录下。

3.1 字体颜色(30到37)

  • \e[30m 将字符的显示颜色改为黑色
  • \e[31m 将字符的显示颜色改为红色
  • \e[32m 将字符的显示颜色改为绿色
  • \e[33m 将字符的显示颜色改为淡红色
  • \e[34m 将字符的显示颜色改为蓝色
  • \e[35m 将字符的显示颜色改为紫色
  • \e[36m 将字符的显示颜色改为淡蓝色
  • \e[37m 将字符的显示颜色改为灰色

3.2 字体背景颜色(40到47)

  • \e[40m 将背景色设置为黑色
  • \e[41m 将背景色设置为红色
  • \e[42m 将背景色设置为绿色
  • \e[43m 将背景色设置为淡红色
  • \e[44m 将背景色设置为蓝色
  • \e[45m 将背景色设置为紫色
  • \e[46m 将背景色设置为淡蓝色
  • \e[47m 将背景色设置为灰色

3.3 颜色结束

  • \e[0m

3.4 举个例子

$ echo -e “\e[31m我的天呀!\e[0m颜色这就变啦!”
$ 我的天呀!颜色这就变啦!

bash初始化小建议的更多相关文章

  1. extjs 优化小建议

    1 原文信息 原文标题: Sencha Con 2013: Ext JS Performance tips 原文地址: [http://edspencer.net/2013/07/19/sencha- ...

  2. 有用的JavaScript开发小建议

    这篇文章将向你分享一些不为人知的但很有用的JavaScript小建议,对那些刚涉及使用JavaScript编程语言的初级开发者应该有很大的帮助. 1. 用数组长度截取数组 我们都知道,对象都是通过使用 ...

  3. 微信小程序--关于加快小程序开发的几个小建议

    加快小程序开发的几个小建议 1.使用 app.json创建页面 ​ 按照我们平常的开发习惯,创建一个新的页面,一般都会先创建文件夹,再创建对应page的形式,创建完成后,app.json中会自动注册该 ...

  4. iOS中书写代码规范35条小建议

    1.精简代码, 返回最后一句的值,这个方法有一个优点,所有的变量都在代码块中,也就是只在代码块的区域中有效,这意味着可以减少对其他作用域的命名污染.但缺点是可读性比较差 NSURL *url = ({ ...

  5. java 小程序查看器 启动:未初始化小程序 解决方法

    欢迎大家转载.为保留作者成果,转载请注明出处,http://blog.csdn.net/netluoriver,有些文件在资源中也能够下载.假设你没有积分.能够联系我索要! 在执行java程序的时候突 ...

  6. 在JAVA中记录日志的十个小建议

    JAVA日志管理既是一门科学,又是一门艺术.科学的部分是指了解写日志的工具以及其API,而选择日志的格式,消息的格式,日志记录的内容,哪种消息对应于哪一种日志级别,则完全是基于经验.从过去的实践证明, ...

  7. Python入门小建议

    "java从心"正式更名"KEN DO EVERTHING".Ken(Can) Do Everything,无所不能 Believe youseft then ...

  8. Docker 部署 redis教程,附带部分小建议,防止踩坑

    Docker 部署 redis,附带部分小建议,防止踩坑 跟所有人一样,我们先从docker基本命令开始 一.拉取redis镜像(配图来自菜鸟,其实截图没多大意义,对比看下) # 默认就拉取laste ...

  9. redis优化小建议

    1.优化的一些小建议 1.尽量使用短的key 当然在精简的同时,不要为了key的"见名知意".对于value有些也可精简,比如性别使用0.1. 2.每个redis设置合理内存 每个 ...

随机推荐

  1. windows编译动态链接库,dll+lib的形式

    之前一直在linux上做开发,没怎么关注过windows上如何编译动态链接库.不过一直存疑,为什么windows上的动态链接库是.dll配合.lib使用的,这个又是怎么生成的呢,通过一段时间的查资料和 ...

  2. notepad++批量每行加字符

    移动光标到头 选择正则 输入^ 下面输入需要加的文本. 点替换

  3. 4. Object

    1. Object.is( );  //用来判断,不同等 == 与===接近.NaN作出的调整 let obj={a:1,b:2}; Object.is(obj,obj);//true Object. ...

  4. 一年时间,Pipenv就成为Python官方推荐的顶级工具?

    Pipenv是Kenneth Reitz在一年多前创建的“面向程序员的Python开发工作流程”,现在已成为管理软件包依赖关系的Python官方推荐资源. Python软件包安装管理的简要历史 为了正 ...

  5. Python(10)

    如果 a+b+c=1000,且 a^2+b^2=c^2(a,b,c 为自然数),如何求出所有a.b.c可能的组合? # 注意是三重循环 for a in range(0, 1001): for b i ...

  6. Apache多处理模块

    介绍 Apache HTTP 服务器被设计为一个功能强大,并且灵活的 web 服务器, 可以在很多平台与环境中工作.不同平台和不同的环境往往需要不同 的特性,或可能以不同的方式实现相同的特性最有效率. ...

  7. Qt提示:setLayout: Attempting to set QLayout "" on MainWindow "MainWindow", which already has a layout

    如题,出现这个的原因是,如果你的窗口继承的是QMainwindow,需要设置setCentralWidget(); 如下: QWidget * widget = new QWidget ( mainW ...

  8. hdu_2570 迷障 贪心

    迷瘴 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...

  9. Linux系统目录结构:目录层次标准、常用目录和文件

    1. 目录层次标准FHS FHS(Filesystem Hierarchy Standard)目录层次标准,是Linux的目录规范标准.   FHS定义了两层规范: 第一层:是"/" ...

  10. mac OS 安装 nvm

    nvm官网 https://github.com/creationix/nvm nvm,node,npm之间的区别 nvm:nodejs 版本管理工具 一个 nvm 可以管理很多 node 版本和 n ...