最近的项目终于不是那么忙了,得空整理整理散落在不同地方的零碎笔记了,但是时间也很零碎,先从容易整理的小笔记开始。

首先当然是这个每逢换电脑都要进行的操作,公司的电脑一般都有很多局限性,设定好不能修改的admin账号,这样命令行通常能暴露很多信息,平时工作当然没啥,但是写笔记要截图就有个问题,很容易暴露自己的姓名,总感觉怪怪的,于是想把命令行显示的主机名和用户名替换掉,研究了下发现果然还是有很多人有这样的需求的,操作起来也很简单。也算一个小tip吧。

这里我们主要用到的就是shell 下的 PS1环境变量了,这可是一个很基础但是也很重要的的环境变量,PS1全称Prompt String 1,有1当然有2..., 但是我们这里专注在PS1上,一般来说我们登陆bash之后,会看到命令行有个前缀表明主机名用户名等信息,这就是前缀,可以通过PS1这个环境变量来进行修改,当然PS1定制化的内容不仅仅这些,还有增加颜色等,这里我们用修改前缀来看看PS1是怎么被修改的。

首先需要找到PS1在哪里被定义的,如果你没有更改过Mac的配置,一般可以在/etc/bachrc中找到它。这里这个文件需要sudo获取临时的root权限去修改她,我们可以使用如下命令:

sudo vi /etc/bashrc

会看到如下的PS1设置

bashrc 文件

这里可能需要我们了解一些不同的参数的含义:

\h: host,主机名称,这里是简写的主机名
\W:显示当前所在目录,但是是目录的最后一程,不是完整路径
\u:显示当前的用户名
\$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$

基于隐私问题,这里就不贴我修改前是什么样的了,但是我们可以看看一个样例:

主机名:xiaoming
目录:/usr/Downloads/test
用户名:mxiao

那么当我们打开terminal后看到的是

xiaoming:test mxiao$

搞清楚这些之后我们可以开始修改我们terminal的前缀了,这里我们的关注点主要是不想显示主机名和用户名,所以可以用纯字符代替,因此做了如下图所示的修改(当然这是一个不好的做法,因为写死了用户名,这样切换到不同的用户的时候就无法通过前缀感知了,但是平时要截图的时候切换用户比较少,所以这个还可以接受:

修改后的PS1

修改好之后:wq! 保存退出。

重新启动terminal或者运行source /etc/bashrc,定制化的terminal前缀就设置好了,这下可以愉快地玩耍了。

因为这是为了截图懒得打码才会使用,因此又小小的做了一个修改,可以切换使用真实的信息和写死的信息,如下:

来两个alias

这样正常工作还是可以得到正常的信息,当需要记录的时候可以方便的切换。

最后一些小note和可以了解的其他PS1参数

note:
1.修改PS1最后记得留一个空格,不然使用命令行的时候体验不好

其他一些参数:

\d: 显示曰期,格式为"星期 月 日"。
\H: 显示完整的主机名。如默认主机名"localhost.localdomain"。
\t: 显示 24 小时制时间,格式为"HH:MM:SS"。
\T: 显示 12 小时制时间,格式为"HH:MM:SS"。
\A: 显示 24 小时制时间,格式为"HH:MM"。
\@:显示 12 小时制时间,格式为"HH:MM am/pm"。
\v: Bash版本信息
\w:显示目录完整路径
\#: 执行的第几条命令
\!:     该命令的历史计数信息

[参考文章]:https://www.cyberciti.biz/tips/howto-linux-unix-bash-shell-setup-prompt.html

作者:Cherishyc
链接:https://www.jianshu.com/p/fa23aa8bc436
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

Mac 修改命令行前缀显示相关推荐

  1. Linux命令行如何编辑word文档,在Linux平台下用命令行工具显示Word文档

    在Linux平台下用命令行工具显示Word文档 ·Antiword ·Catdoc ·wvWare[@more@] Viewing Word files at the command line Wed ...

  2. 在mac上命令行里面如何打开文本编辑器?

    在mac上命令行里面如何打开文本编辑器?   在linux命令行terminal上使用gedit直接就可以打开文本文件 那么在mac上面如何操作呢? 使用:open -a TextEdit setti ...

  3. 如何在命令行中显示五彩斑斓的“黑”

    1. 前言 大部分 coder 已经习惯了命令行枯燥的黑底白字,而且任何编程语言入门的第一行代码都是教我们如何在标准输出(大部分情况就是命令行终端或控制台)打印一行"非黑即白"的 ...

  4. Mac设置命令行代理

    为了下载GitHub的代码,所以需要开启命令行代理 mac打开命令行 执行 open -e ~/.zshrc 打开.zshrc文件 open -e ~/.zshrc 在下面插入,代理地址记得去查看一下 ...

  5. Mac使用命令行批量导入数据库数据

    Mac使用命令行批量导入数据库数据 进入你的mysql安装目录 /usr/local/mysql/bin/mysql -u root -p 创建database CREATE DATABASE '你的 ...

  6. Mac通过命令行操作mysql

    Mac通过命令行操作mysql 通过命令行启动数据库:终端输入 配置环境变量 在bash_profile文件的最后输入并保持文件 执行bash_profile文件 操作mysql 展示数据库 通过命令 ...

  7. Mac PPPOE命令行连接

    Mac PPPOE命令行连接 问题说明 下载安装包 编译源代码 安装软件 问题说明 本人安装了黑苹果之后,PPPOE一开始可以上网后来不知为什么始终连不上,不知道是电脑的原因还是移动服务器的原因.于是 ...

  8. Mac OS 命令行修改IP地址

    1.查看网络服务 # networksetup -listallnetworkservices Ethernet 以太网 # ifconfig 查看网卡名称 2. 设置IP地址 # networkse ...

  9. iTerm,让你的Mac OS命令行也能丰富多彩

    今天要给大家介绍一个工具:iTerm.这次我们讲的和开发技术无关,只是一个工具.但虽然是一个工具,却能让你的功力提升一个层级.下面我们就来一看究竟.每一位开发者都难免要用到命令行,从 git 版本库操 ...

最新文章

  1. shell的数字、字符串处理
  2. Android入门(十七)Android多线程
  3. P2184 贪婪大陆
  4. mongoose 更新元素 DeprecationWarning: collection.update is deprecated. Use updateOne, updateMany
  5. spring classpath*
  6. android开源库汇总
  7. 一个SAP顾问在美国的这些年
  8. P205-下载xkcd漫画
  9. sharedpreferences存不进去_搞笑:主人买了一个钢铁侠模型,小猫咪直接就坐进去了...
  10. 三年的硬件开发转软件开发:
  11. 软件测试常用术语(中英文对照)
  12. 云钻还在吗 苏宁怎么解除实名认证_实名认证-苏宁如何修改实名认证我想修改实名认证信?苏 – 手机爱问...
  13. 计算机仿真实验单摆,计算机仿真实验用凯特摆测重力加速度.doc
  14. 抄送(Carbon Copy)
  15. js页面将数据内容以文件形式下载
  16. Coding-for-ssds (翻译)
  17. matlab 产生取值介于a到b之间的满足正态(高斯)分布的随机数/数组/矩阵
  18. 1.Debussy安装 与 modelsim与debussy联调环境的搭建
  19. ArcGIS:如何新建图层组并添加数据、切换数据视图和布局视图、修改符号系统?
  20. 电脑一次打开多个软件

热门文章

  1. 快手小店通效果好吗?
  2. 分库分表——基本概念以及shardingJdbc和Mycat对比
  3. linux_system函数
  4. java 下载图片流
  5. Intellidea创建maven project遇到的问题
  6. go语言比java高级在哪里
  7. draw.io diagrams 画图 插入latex数学公式
  8. Java list.toArray()和list.toArray(T[] a)
  9. Acrobat 虚拟打印机打印失败故障解决之一
  10. 基于闪电连接过程优化算法的函数寻优算法