简单配置自己的Bash Shell

来源:互联网 发布:网络使人更亲近的例子 编辑:程序博客网 时间:2024/06/06 14:27

与Windows有所不同,Linux赋予了我们较大的自主性,他是可定制的。Bash Shell是最常见的定制之一。

通常可有以下几种方式:

  1. 自定义局部变量
  2. 自定义别名或者函数
  3. 通过set命令配置
  4. 设定环境变量配置
  5. 修改配置文件
这几种方式都不难,简单说说就能听懂。

shell变量分两种——局部变量,环境变量,set命令显示所有变量(两种都显示),env命令只显示环境变量

局部变量:只能在当前工作环境中使用

环境变量:不但可在当前工作环境中使用还可传递给他所有的子shell


1.自定义局部变量:命令格式如下

变量名=变量值

PS1变量是较常用的局部变量,它是用来设置Bash Shell的提示符所显示的信息的;例如【dog@dog~】$

配置PS1变量可用的转义字符如下:

  • \d:系统当前的日期
  • \t:系统当前的时间
  • \h:简短形式的主机名
  • \u:当前用户名
  • \w:当前工作目录
  • \!:当前命令的历史编号
  • \$:如果是普通用户显示$如果是root就显示#
  • \l:显示Shell终端设备的基本名

例如:【dog@dog~】$ PS1='[\u@\h \w TTY\l \d \t \!]\$'

回显:[dog@dog ~ TTY1 Tue Mar 02 20:37:58 1002]$


2.自定义别名:命令格式如下

alias 别名的名字=命令的字符串

注意:等号两边不能有空格,字符串若有空格需要用单引号引用


3.通过set命令配置: 有很多参数可以用set -o命令设置开关


4.设置环境变量:可以将局部变量转换成环境变量

export 局部变量名


5.设置配置文件:  以上方法在计算机重启或者退出后就会失效,若想永久保存更改就需要配置shell启动脚本

shell其实分两种:login shell和non-login shell

前者是指由用户登录操作触发运行的shell(如开机),“su -用户名”命令也是使用此方式

后者是指其他方式启动的shell,“su 用户名”命令使用此方式


login shell启动会一次执行如下脚本:

/etc/profile  ,  ~/.bash_profile  ,  ~/.bashrc  ,  /etc/bashrc

non-login shell启动只执行以上四个脚本中的最后两个


我们可以通过更改/etc/profile 和~/.bash_profile 两个文件来自定义配置


除了以上几个文件还有一个文件值得注意:~/.bash_logout,在用户退出系统是会自动调用此文件,可以通过配置该文件运行某些备份操作

原创粉丝点击