《学习bash》第二版读书笔记

本文介绍了bash中定制用户环境的方法,包括重要的配置文件(.bash_profile, .bashrc等)的作用及区别,如何设置环境变量,使用alias命令创建别名简化命令输入,以及变量的引用方式等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第三章定制用户环境

bash定制用户环境的所提供的四个最重要的特性:特殊文件(.bashrc, .bash_profile<最重要的>, .bash_logout, /etc/profile<前面三个文件不存在时使用>),别名,选项和变量。

.bash_profile、.bash_logout和.bashrc文件

.bash_profile在shell登录时调用;在gnome桌面环境中,只有在使用相应的用户登录时用户主目录下的此文件才会执行,而不是打开终端窗口时执行,打开终端执行的是.bashrc文件。(举一反三:所有主目录下的.*rc文件都是相关程序启动时执行的。如:.vimrc)。
export命令的作用是把变量的定义导出给子shell使用。也可以理解为定义环境变量。环境变量是指对所有进程可见的的变量。只有环境变量对所有子进程可用。
source命令作用是在当前shell环境下读取并执行文件,可用“.”代替。如果没有直接运行的话是在子shell环境中执行文件。
.bash_login, .profile和.bash_profile是相同意义的文件都是在登录时使用,只是其他两个文件是别的shell定义的,在bash中兼容而已。他们三个文件只有一个会被读取顺序是.bash_profile->.bash_login->.profile。
.bashrc文件在启动新shell时会被调用。
.bash_logout是和.bash_profile正好相反的在登出时执行。

别名alias xxx=‘command’

别用最常用的领域是对长命令取别名以减少输入注意“=”后面的命令要放在单引号里。别名可以递归即定义别名的别名;别名中不能含有通配符如a*b=‘cd ~’是错误的别名定义方法;别名只能用于命令字符串的开始(某些情况下会有例外)。

变量和引用

取变量的语法$varname实际上是标准语法${varname}的缩写。
PATH变量最好是在目录后面添加,不要添加在前面。因为bash是按目录出现的顺序查找命令,如果你的命令和系统原有的重名,会导致系统的命令被屏蔽掉。
CDPATH是指定cd命令查找目录的变量。默认的cd命令是在当前目录下查找参数目录。
PWD变量指定当前目录取值即为pwd命令的输出。

定制和子进程

环境变量是指对所有进程可见的的变量。
varname=value command使某个变量仅对某个命令有效。
在bash中运行命令的实质是以bash为父进程,启动子进程,在子进程中运行命令。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值