问题“ .bashrc 的目的是什么以及它是如何工作的? ”寻求.bashrc的目的和用途.bashrc
。另一个具有相似名称的文件是.bash_logout
.
这个文件应该首先存在吗?如果有,这个文件的作用是什么?
And*_*ton 11
来自man bash
:
当登录 shell 退出时,bash 从文件 ~/.bash_logout 和 /etc/bash.bash_logout 中读取并执行命令(如果文件存在)。
Kus*_*nda 10
该.bash_logout
文件不必存在。
其内容是通过采购bash
当bash
登录shell退出。例如,该文件可以在从终端会话注销时进行各种形式的清理。
它可用于执行任何 shell 代码,但可用于例如在非 GUI 环境中进行登录时清除屏幕。有些人可能还会发现它对于显式终止从.bash_login
或启动的程序很有用.bash_profile
(例如,如果fetchmail
某个类似的进程作为用户守护程序或在后台启动,则最好在 中终止它.bash_logout
)。
该csh
外壳有一个叫做类似的文件.logout
,并在相应的文件zsh
调用shell .zlogout
。据ksh
我所知,shell 没有类似的功能。
另请参阅与切线相关的问题Login Shell 和 Non-Login Shell 的区别?
由于这个问题要求提供.bash_logout
文件的详细信息,因此最好列出各种类似的文件。我们通常有这 6 个文件用于各种目的:
/etc/profile
~/.bash_profile
~/.bash_login
~/.bashrc
~/.profile
~/.bash_logout
在某些情况下,您可能还会遇到.bash_history
文件,它存储用户已执行的命令。
假设您知道.bashrc
文件.bash_login
,让我们重点关注这些文件的执行顺序,然后我们将了解.bash_logout
文件的用途。
首先,当用户登录时,如果.bash_profile
.bash_login
文件可用,则无论文件是否存在,都会执行.profile
。
如果该文件不可用,则首先.bash_login
执行该文件,如果该文件也不可用,则将.profile
执行该文件。
注意.bash_profile
当用户登录时,会读取文件并执行该文件中的任何命令,但当用户启动新 shell 时不会读取该文件。如果用户启动一个新的 shell,.bashrc
则会读取文件,对此您非常了解。
来到.bash_logout
文件,从名称就可以清楚地看出,该文件是在用户注销时执行的。人们可能会同意,bash 的主要目的是提供一个使用户工作更轻松的环境。所以这个文件有助于创建一个环境,可以帮助在用户注销时执行一些命令。可能有很多实例。为了便于说明,我们假设管理员希望在用户注销时终止该用户启动的所有进程。或者,用户可能想要清除该.mysql_history
文件。他们可能想要在注销时复制一些文件或进行备份。所以你看,可能有很多例子。
假设用户希望/etc
在每次注销时制作目录的备份文件。因此他们可能会打开.bash_logout
文件并键入以下命令:
tar -cvjf /etc ~/path/to/destination
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
16357 次 |
最近记录: |