.bashrc文件
.bashrc
是一个
配置文件
,主要用于用户自定义 Bash shell(Linux 系统中的默认命令行解释器)的行为和环境。你可以在
.bashrc
文件中设置环境变量,比如修改
PATH
路径以添加自己的程序目录;也可以为常用命令设置别名,简化操作,例如将
ls -lh
设置为
ll
以及 自定义命令行提示符、编写简单函数、自动执行特定的命令或脚本等等。
.bashrc
文件位于用户主目录下,路径是:
~/.bashrc
。当用户启动一个交互式的非登录 shell时,
.bashrc
文件就会自动被加载。如果进行修改,修改完成后需要使用
source ~/.bashrc
使其生效。
良好的习惯
作为新手用户,在拿到服务器账号后,如果要修改
.bashrc
配置文件,建议在每次修改之前都做一个 bashrc文件的备份,这样即便误操作,还能最大程度恢复。
# #备份bashrc文件 cp ~/.bashrc ~/.bashrc_20241217
备份
修改bashrc
vi/vim 编辑器打开
.bashrc
。前提是需要掌握vim编辑器的用法
vim ~/.bashrc
自定义
.bashrc
文件,比如设置命令提示符、添加自己安装的软件路径到环境变量 等等
# 自定义命令提示符(PS1 变量) PS1="\[\e[32;1m\]\u \[\e[33;1m\]\t \[\e[35;1m\]\w \n\[\e[0;0m\]$" #添加软件路径到环境变量 export PATH="/home/data/t160560/softname/bin:$PATH"
source ~/.bashrc
修改PS1变量
恢复初始的bashrc
如果你之前没有备份过basrc文件,同时你又误操作(比如删除了
.bashrc
、修改PATH变量结果把初始的PATH路径覆盖掉了、
.bashrc
文件写入了很多乱七八糟的字符 等等),如果你想恢复初始的
.bashrc
。这时候你可以从
/etc/skel
路径下去复制一份。【
/etc/skel
目录是 Linux 系统中的一个模板目录,用于存放用户主目录的默认配置文件】
cp /etc/skel/.bashrc ~/# cp /etc/skel/.profile ~/
注:这个恢复也仅仅是限于恢复初始的 .bashrc 配置,如果你在误操作之前,就已经自己进行过一些个性化设置,那么这个操作是无法对你的个性化设置恢复的。你只有重新设置,或者在操作前提前备份你的bashrc
背景补充
shell
GNU/Linux shell 是一种特殊的交互式工具。它为用户提供了启动程序,管理文件系统中的文件以及运行在Linux系统上的进程的途径。shell的核心是命令行提示符。命令行提示符是shell负责交互的部分。它允许你输入文本命令,然后解释命令,并在内核中执行。在Linux系统上,通常有好几种 Linux shell 可用,其本身也是一个可执行程序,不同shell有不同的特性,有些利于创建脚本,有些则更利于管理进程。通常Linux发行版系统默认的shell是 sh 或者bash。
ash 一种运行在内存受限环境中简单的轻量级shell,与bash shll 完全兼容
korn 一种与Bourne shell 兼容的编程shell,其支持如关联数组和浮点运算等一些高级的编程特性
tcsh 一种将C语言中一些元素引入到shell脚本中的shell
zsh 一种结合了bash、tcsh和korn的特性,同时提供高级编程特性、共享历史文件和主体化提示符的高级shell(MAC电脑终端的默认shell 就是 zsh)
Fish 一种用户友好的现代命令行 Shell,专为简化使用、提高效率而设计。它与传统 Shell(如 Bash 或 Zsh)相比,更加直观,易于上手,并且提供了开箱即用的强大功能和美观的默认配置。
这些shell都可以被设置为用户默认的shell。不过由于bash shell 的广为流行,很少有使用其他shell作为默认shell。至于用户启动什么样的shell程序取决于个人的用户ID配置。在
/etc/passwd
文件中,用户ID记录的第7个字段,列出了用户的默认shell程序。只要用户登录,默认的shell程序就会开始运行。
用户ID记录
不同的shell 有其不同的配置文件
Bash(Bourne Again Shell):
~/.bashrc
Ksh(Korn Shell):
~/.kshrc
Csh(C Shell)和 Tcsh(Enhanced C Shell):
~/.cshrc
Fish(Friendly Interactive Shell):
~/.config/fish/config.fish
vim 编辑器
Vim
是 Linux 和其他类 Unix 系统上广泛使用的文本编辑器,它是 Vi 编辑器的增强版,名字来源于 “Vi IMproved”(Vi 的改进版)。最常用的是以下 3 种模式:
bash shell 命令提示符 PS1 变量
PS1常用的参数: