Debian .bashrc以及.profile的区别 以及修改history记录的历史命令
/etc/profile 系统环境变量 对每个用户都会生效 用户第一次登录时 该文件被执行并且从/etc/profile.d 目录的配置文件中收集shell设置
所以修改了之后需要重启或者执行 source /etc/profile 才会生效
(ps:下面的文章有说一个注意点 在/etc/profile设置系统环境变量 路径末尾不能用/结尾不然导致PATH变量出错)
/etc/bashrc或/etc/bash.bashrc (在我本地是bash.bashrc) 任何用户打开bash shell时执行此文件 所以修改此文件后立刻生效
~/.bash_profile或~/.profile (在我本地是bash.bashrc) 用户登录时该文件仅被执行一次 默认情况下该文件设置一些环境变量 执行用户的 .bashrc 文件 其实和 /etc/profile 差不多 只对该用户生效
~/.bashrc 和/etc/bashrc 差不多 只对该用户生效
~/.bash_logout 明显用户退出时执行 比如可以执行 清除.bash_history记录的历史命令记录或者删除这个文件等等
~/.bash_history 明显记录的是该用户执行的历史命令
可以在 /etc/profile 中设置一些关于history命令的一些参数
export HISTTIMEFORMAT=”xxxxxx” # 记录命令格式这里没怎么研究
export HISTSIZE=20 # history命令记录命令数量
export HISTFILESIZE=10000 # 记录文件的行数
export HISTIGNORE=”ls*:ll” # 忽略的命令
export PROMPT_COMMAND=”history 1 >> /…/history.log” # 明显将history命令结果输出到日志文件中
参考了一些文章
https://www.cnblogs.com/triple-y/p/11107133.html
https://www.cnblogs.com/dylancao/p/10109298.html
https://www.cnblogs.com/dijia478/p/11782974.html
————————————————
Linux 之 .bashrc 文件作用
Linux 系统中很多 shell,包括bash,sh,zsh,dash 和 korn 等,不管哪种 shell 都会有一个 .bashrc
的隐藏文件,它就相当于 shell 的配置文件。
一般会有多个 .bashrc
文件,使用 find
命令可以查看:
$ sudo find / -name .bashrc
/home/hj/.bashrc # hj 为用户名
/root/.bashrc
/snap/core18/941/etc/skel/.bashrc
/snap/core18/941/root/.bashrc
/snap/core18/970/etc/skel/.bashrc
/snap/core18/970/root/.bashrc
/snap/core/6818/etc/skel/.bashrc
/snap/core/6818/root/.bashrc
/snap/core/6964/etc/skel/.bashrc
/snap/core/6964/root/.bashrc
/snap/core/6673/etc/skel/.bashrc
/snap/core/6673/root/.bashrc
/etc/skel/.bashrc
不同目录下的 .bashrc
文件其作用不尽相同,比如:
/etc/skel/.bashrc
:文件将复制到系统上创建的任何新用户的主文件夹中/home/hj/.bashrc
:是bash
的配置文件,保存个人的一些个性化设置,如命令别名、路径等
在这里我们主要来探讨下用户主目录下的 .bashrc
文件,即:/home/hj/.bashrc
。
使用 man bash
命令查看到的联机帮助文件中的相关解释如下:
这个文件主要保存个人的一些个性化设置,如命令别名、路径等。下面是个例子:
.bashrc - The individual per-interactive-shell startup file.
这个文件主要保存个人的一些个性化设置,如命令别名、路径等。下面是个例子:
# User specific aliases and functions
PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
.GBK
export PATH LANG
alias rm='rm -i'
alias ls='/bin/ls -F --color=tty --show-control-chars'
....
利用 .bashrc 进行个性化设置
每次修改 .bashrc
后,使用 source ~/.bashrc
(或者 . ~/.bashrc
)就可以立刻加载修改后的设置,使之生效。
一般会在.bash_profile
文件中显式调用.bashrc
。登陆 linux
启动 bash
时首先会去读取 ~/.bash_profile
文件,这样 ~/.bashrc
也就得到执行了,你的个性化设置也就生效了。
利用这一特性,可以实现一些个性化设置,如:Linux 系统开机执行自动某个脚本文件等,这在自动化运维方面有一定的用处。
1、修改 /home/hj/.bashrc
文件:
sudo vim /home/hj/.bashrc
# 在最后添加两句后保存
echo '这句话开机就会启动' # 打印输出
python3 /home/hj/test.py # 执行 test.py 这个脚本
2、当 Linux 开机后:
可以看到 Linux 开机后加载了 .bashrc
文件。