Linux Bash 提示符的一些骚操作

当你在 Linux 环境下打开一个 Shell 终端时,会看到命令行中出现了类似下面的一个 Bash 提示符:[user@$host ~]$你知道命令行提示符其实是可以自己设置添加许多非常有用的信息的吗?在这篇文章中我就会教你如何自定义自己的 Bash 命令行提示符,想看的话就接着看吧~

操作方法

  • 01

    如何设置 Bash 提示符 Bash 提示符是通过环境变量 PS1 (提示符字符串 1Prompt String 1) 来设置的,它用于交互式 shell 提示符。当然如果你需要更多的输入才能完成一个 Bash 命令时,PS2 环境变量就是用来设置多行提示符的: [dneary@dhcp-41-137 ~]$ export PS1="[Linux Rulez]$ " [Linux Rulez] export PS2="... " [Linux Rulez] if true; then ... echo "Success!" ... fi Success! 部分选自《Linux就该这么学》感兴趣的可以去看下

  • 02

    在哪里设置 PS1 的值? PS1 就是一个普通的环境变量,系统默认值设置在 /etc/bashrc 中,在我的系统中,默认提示符通过以下命令来设置的: [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ " 它判断 PS1 是否是系统的默认值 \s-\v$ ,如果是的话则将值设置为 [\u@\h \W]\$。(LCTT 译注:注意命令中用 \ 做了转义。) 但如果你想要自定义提示符,不应该修改 /etc/bashrc ,而是应该在你的主目录下将自定义命令加到 .bashrc 文件中。

  • 03

    上面提到的 \u、\h、\W、\s 和 \v 是什么意思? 在 man bash 中的 PROMPTING 章节中,你能够找到所有 PS1 和 PS2 相关的特殊字符的描述,以下是一些比较常用的: \u:用户名 \h:短主机名 \W:当前你所在的目录的名称(basename),~ 表示你的主目录 \s:Shell 名字(bash 或者 sh,取决于你的 Shell 的名字是什么) \v:Shell 的版本号

  • 04

    还有哪些特殊的字符串可以用在提示符当中 除了上面这些,还有很多有用的字符串可以用在提示符当中: \d:将日期扩展成 “Tue Jun 27” 这种格式 \D{fmt}:允许自定义日期格式——可通过 man strftime 来获得更多信息 \D{%c}:获得本地化的日期和时间 \n:换行(参考下面的多行提示符) \w:显示当前工作目录的完整路径 \H:当前工作机器的完整主机名 除了以上这些,你还可以在 Bash 的 man 页面的 PROMPTING 部分找到更多的特殊字符和它的用处。

  • 05

    多行提示符 如果你的提示符过长(比如说你想包括 \H 、\w 或完整的日期时间时 ),想将提示符切成两行,可以使用 \n 将提示符切断成两行显示,比如下面的多行的例子会在第一行显示日期、时间和当前工作目录,第二行显示用户名和主机名: PS1="\D{%c} \w\n[\u@\H]$ "

  • 06

    还能再好玩点吗? 人们偶尔也想将提示符变成彩色的。虽然我觉得彩色提示符让人分心、易怒,但是也许你很喜欢。如果我们想将日期变成红色的,目录变成青蓝色,用户名搞一个黄色背景,你可以这样做: PS1="\[\e[31m\]\D{%c}\[\e[0m\] \[\e[36m\]\w\[\e[0m\]\n[\[\e[1;43m\]\u\[\e[0m\]@\H]$ " \[..\] :表示一些非打印字符 \e[.. :转义字符,后面的跟着的特定的转义字符串在终端中表示颜色或者其他意思 31m :表示红色字体(41m 表示是红色背景) 36m :表示是青蓝色字体 1; 43m :表示黄色字体(1;33m 表示黄色字体) [\e[0m]] :它在最后将颜色恢复成系统终端默认颜色 你可以在 Bash prompt HOWTO 这里找到更多的颜色代码,甚至可以让字符反相和闪烁!我不知道为什么地球人会有这种想法,但是你可以这么干! 所以你最喜欢的自定义提示符是什么样子的呢?有没有让你抓狂的自定义提示符呢?请在评论里告诉我吧~

(0)

相关推荐

  • Linux Bash 提示符的一些操作

    当你在 Linux 环境下打开一个 Shell 终端时,会看到命令行中出现了类似下面的一个 Bash 提示符:  [user@$host ~]$ 你知道命令行提示符其实是可以自己设置添加许多非常有用的 ...

  • Win10 Build 14316启用Linux Bash 环境图文教程

    微软在 Build 2016 大会上宣布将在 Windows 10 中内置 Linux Bash,引起巨大轰动.到了 Windows 10 内部预览版 Build 14316,这个特性终于面世了. 经 ...

  • 在新版 Win10 中启用 Linux Bash 环境

    2017年,Win10 上的 Linux 子系统,其安装方式发生了一些变化,更易操作了,详情请参见引用. 微软在 Build 2016 大会上宣布将在 Windows 10 中内置 Linux Bas ...

  • Win10一周年更新预览版14316如何开启原生支持Linux Bash命令行?

    微软今天向Insider快速通道用户推送了Win10一周年更新预览版14316,本次更新带来了大量全新特性,包括全黑主题.Ubuntu Bash原生支持.跨平台小娜提醒.电脑体验Continuum模式 ...

  • Centos和Ubuntu怎么修复Linux Bash漏洞?

    日前Linux官方内置Bash中新发现一个非常严重安全漏洞,黑客可以利用该Bash漏洞完全控制目标系统并发起攻击,为了避免您Linux服务器受影响,建议您尽快完成漏洞修补. 今天Linux官方已经给出 ...

  • Win10系统Linux Bash命令怎么用?

    微软已经在Win10一周年更新预览版中加入了Ubuntu Bash命令支持,IT之家也曾经介绍过如何安装和开启Win10版Linux Bash命令.不过还是有用户在开启后不太会用,这次我们就介绍一下W ...

  • Win10版Linux Bash命令使用教程

    Win10版Linux Bash命令使用教程.不知不觉间,win10已经推出快要一年了.而广大用户们一定也发现了,微软在Win10一周年更新预览版中加入了Ubuntu Bash命令支持.不过还是有用户 ...

  • Win10系统如何开启Linux Bash命令行?

    Win10系统如何开启Linux Bash命令行?下面小编就为大家介绍一下具体的开启方式. 方法步骤: 1.首先将Win10系统升级到最新的Build 14316,然后到系统设置--更新和安全--针对 ...

  • Win10系统下Linux Bash命令如何使用

    Windows10系统Linux Bash命令的使用方法. 具体方法如下: 1.没安装Bash的用户可以按照之前介绍的方法,先在设置→更新和安全→针对开发人员中选择"开发人员模式" ...