一、.bashrc 是什么?

.bashrc是home目录下的一个shell文件,用于储存用户的个性化设置。在bash每次启动时都会加载.bashrc文件中的内容,并根据内容定制当前bash的配置和环境。

补充:

1. 关于用户目录下的四个隐藏文件

在linux系统普通用户目录(cd /home/xxx)或root用户目录(cd /root)下,用指令ls -al可以看到4个隐藏文件

.bash_history 记录之前输入的命令

.bash_logout 当你退出时执行的命令

.bash_profile 当你登入shell时执行

.bashrc 当你登入shell时执行

.bash_profile和.bashrc的区别?

  • 两者在登陆bash时都会被bash执行,但是.bash_profile只在会话开始时被读取一次,而.bashrc在每次打开新的终端时都会被读取。

除了可以修改用户目录下的.bashrc文件外,还可以修改如“/etc/profile”文件、“/etc/bashrc”文件及目录“/etc /profile.d”下的文件。但是修改/etc路径下的配置文件将会应用到整个系统,属于系统级的配置,而修改用户目录下的.bashrc则只是限制在用户应用上,属于用户级设置。两者在应用范围上有所区别,建议如需修改的话,修改用户目录下的.bashrc,即无需root权限,也不会影响其他用户。

二、.bashrc 能干什么?

1.个性化指令

alias ll = "ls -lha"

2.设定环境路径

PATH="$PATH:$HOME/.local/bin:$HOME"
export PATH

3.提示符设置

PS1=[\u: \w]$”

三、.bashrc 怎么用?

可以用任何终端文本编辑器打开.bashrc。以vim为例:

vim ~/.bashrc

1.个性化指令

打开.bashrc后,可以在利用利用命名函数alias定制需要的指令,如

#用 ll 代替 ls -lha 这个命令,在此bash下输入命令 ll 等
#同于输入 ls -lha 命令
alias ll = "ls -lha"

除了缩短命名,也可以用bash函数组合多个命令到一个操作,这些命令大多遵循以下语法。
语法一:

function function_name {
    command1
    <^>command2</^>
}

语法二:

function_name () {
 command_1
 command_2
}

语法三

function_name () { command1; command2; }	

下面的命令组合了mkdir和cd命令,输入md folder_name不仅可以在你的工作目录创建一个名为"folder_name"的目录且进入其中,代码如下:

md () {
  mkdir -p $1
  cd $1 
}

也可写成:

md () {  mkdir -p $1; cd $1; }

2.路径设置

每次export路径太麻烦,把路径加入到.bashrc是一个一劳永逸的方法,常见的设置语法如下:

#软件名-版本号
#语法一
PATH=$PATH:路径
export PATH

#语法二
export PATH=$PATH:路径

上述语法可以理解为,在原来PATH的后面继续添加了新的路径,在运行特定指令时,系统会逐个位置去寻找文件。 $PATH 表示原先设定的路径,不能遗漏。

不同于DOS/Windows,Unix类系统的环境变量的路径用冒号:分割,而不是分号;。为避免环境变量过多产生混乱,建议所有语句都添加在文件结尾,并添加注释。

所有环境变量名都是大写,Linux区分大小写

注意:对 .bashrc 所做的任何修改将在下一次启动终端时生效。如果你想立刻生效的话,运行下面的命令:

source ~/.bashrc

2.1 使用场景:配置交叉编译工具链

一般来说,配置交叉编译工具链的时候需要指定编译工具的路径,此时就需要设置环境变量。例如我的aarch32-rockchip-linux-toolchain-rk3308编译工具链软连接在“/opt/aarch32-rockchip-linux-toolchain-rk3308/build_tools/bin”目录下,build_tools就是我的编译工具,则可以通过如下两种方式来设置环境变量:

1、修改profile文件:

#vi /etc/profile

export PATH="$PATH:/opt/aarch32-rockchip-linux-toolchain-rk3308/build_tools/bin"

2 、修改.bashrc文件:

# vi /root/.bashrc

export PATH="$PATH:/opt/aarch32-rockchip-linux-toolchain-rk3308/build_tools/bin"

四、.bashrc 没了怎么办?

如果用户删除了.bashrc,可以从如下路径拷贝一份原始的.bashrc文件到用户home目录下

cp /etc/skel/.bashrc ~/

五、关于zshell

zshell的介绍文章:Ubuntu安装zsh

如果安装了zshell,则开启终端是启动.zshrc文件,此时需要将修改内容写在该文件下


参考博文:

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐