想要用好bash shell,首先得搞清楚bash shell环境的配置,只有配置好了,我们用起来才会得心应手,要想配置好,必须了解清楚bash配置文件的类型,再根据实际需求做一些相应的添加或修改就可以了。
一、bash的配置文件(一)按生效范围划分:全局配置、个人配置 1、全局配置: /etc/profile /etc/profile.d/*.sh /etc/bashrc 2、个人配置: ~/.bash_profile ~/.bashrc
(二)按功能划分:profiile类、bashrc类
1、profile类:为交互式登录的shell提供配置 全局:/etc/profile, /etc/profile.d/*.sh 个人:~/.bash_profile 功用: (1) 用于定义环境变量 (2) 运行命令或脚本2、bashrc类:为非交互式和交互式登录的shell提供配置
全局:/etc/bashrc 个人:~/.bashrc 功用: (1) 定义命令别名和函数 (2) 定义本地变量
二、shell登录的两种方式:交互式登录、非交互式登录
1、交互式登录: (1)直接通过终端输入账号密码登录; (2)使用“su - UserName” 切换的用户 读取配置文件顺序:/etc/profile --> /etc/profile.d/*.sh --> ~/.bash_profile --> ~/.bashrc --> /etc/bashrc2、非交互式登录:
(1)su UserName (2)图形界面下打开的终端 (3)执行脚本 读取配置文件顺序:~/.bashrc --> /etc/bashrc --> /etc/profile.d/*.sh
三、编辑配置文件生效方法
修改profile和bashrc文件后不会立即生效 想要立即生效的两种方法: 1重新启动shell进程 2 . 或source 例:. ~/.bashrc
四、Bash 退出任务
保存在~/.bash_logout文件中(用户配置) 在退出登录shell时运行 用于 创建自动备份 清除临时文件
五、创建临时文件
mktemp命令:创建的临时文件可避免冲突 mktemp [OPTION]... [TEMPLATE] -d: 创建临时目录 --tmpdir=/DIR:指明临时文件所存放的目录位置 TEMPLATE: filename.XXX X至少要出现三个 实例: #mktemp --tmpdir=/testdir test.XXXXXX
六、安装复制文件——install命令
install [OPTION]... [-T] SOURCE DEST 单文件 install [OPTION]... SOURCE... DIRECTORY install [OPTION]... -t DIRECTORY SOURCE... install [OPTION]... -d DIRECTORY...创建空目录 -m MODE,默认755 -o OWNER -g GROUP
七、阻止命令行扩展
反斜线(\)会使随后的字符按原意解释 $ echo Your cost: \$5.00 Your cost: $5.00 加引号来防止扩展 单引号(’)防止所有扩展 双引号(”)也防止所有扩展,但是以下情况例外: $(美元符号) - 变量扩展 `(反引号) - 命令替换 \(反斜线) - 禁止单个字符扩展 !(叹号) - 历史命令替换