如何编写自己的Shell配置文件或脚本

对于普通用户来说,也许 ~/.bashrc 才是最重要的文件,因为不管是否登录都会加载该文件。

我们可以将自己的一些代码添加到 ~/.bashrc,这样每次启动 Shell 都可以个性化地配置。如果你有代码洁癖,也可以将自己编写的代码放到一个新文件中(假设叫 myconf.sh),只要在 ~/.bashrc 中使用类似. ./myconf.sh的形式将新文件引入进来就行了

使用 source 命令引入其它代码文件时有一些细节需要注意,我们将在《Shell模块化》一节中展开讨论。

实例1:给 PATH 变量增加新的路径

你曾经是否感到迷惑,Shell 是怎样知道去哪里找到我们输入的命令的?例如,当我们输入 ls 后,Shell 不会查找整个计算机系统,而是在指定的几个目录中检索(最终在 /bin/ 目录中找到了 ls 程序),这些目录就包含在 PATH 变量中。

当用户登录 Shell 时,PATH 变量会在 /etc/profile 文件中设置,然后在 ~/.bash_profile 也会增加几个目录。如果没有登录 Shell,PATH 变量会在 /etc/bashrc 文件中设置。

如果我们想增加自己的路径,可以将该路径放在 ~/.bashrc 文件中,例如:

PATH=$PATH:$HOME/addon

将主目录下的 addon 目录也设置为系统路径。假如此时在 addon 目录下有一个 getsum 程序,它的作用是计算从 m 累加到 n 的和,那么我们不用 cd 到 addon 目录,直接输入 getsum 命令就能得到结果。

[c.biancheng.net]$ getsum -s 1 -e 100
5050

-s选项表示起始(start)数字,-e选项表示终止(end)数字,以上命令用来计算从 1 累加到 100 的和。

实例2:修改命令提示符的格式

现在我们已经知道,在 ~/.bashrc 文件中修改 PS1 变量的值就可以持久化,每个使用 Shell 的用户都会看见新的命令提示符。

将下面的代码添加到 ~/.bashrc 文件中,然后重新启动 Shell,命令提示符就变成了[c.biancheng.net]$

PS1=”[c.biancheng.net]\$ “

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论