首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >.bash_logout的目的是什么?

.bash_logout的目的是什么?
EN

Unix & Linux用户
提问于 2018-02-13 20:11:00
回答 3查看 25.6K关注 0票数 17

".bashrc的目的是什么?它是如何工作的?“问题寻求.bashrc的目的和用途。另一个具有类似名称的文件是.bash_logout

这个文件应该首先存在吗?如果是的话,这个文件的作用是什么?

EN

回答 3

Unix & Linux用户

回答已采纳

发布于 2018-02-14 11:03:39

.bash_logout文件不一定存在。

bash登录shell退出时,它的内容由bash提供。例如,当从终端会话注销时,文件可以执行各种形式的清理。

它可以用于执行任何shell代码,但也可以用于清除屏幕,如果登录是在非GUI环境中完成的。有些人还可能发现它对于显式终止从.bash_login.bash_profile启动的程序很有用(例如,如果fetchmail或一些类似的进程是作为用户守护进程启动的,或者是在后台启动的,那么最好在.bash_logout中终止它)。

csh shell有一个类似的文件名为.logout,对应的zsh外壳文件称为.zlogout。据我所知,ksh外壳没有类似的功能。

也见切线相关的问题登录壳和非登录壳的区别?

票数 16
EN

Unix & Linux用户

发布于 2018-02-13 20:13:13

来自man bash

当登录shell退出时,bash读取并执行文件~/.bash_logout和/etc/bash.bash_logout (如果文件存在)的命令。

票数 14
EN

Unix & Linux用户

发布于 2018-02-15 07:31:55

由于这个问题要求提供.bash_logout文件的详细信息,所以最好列出各种类似的文件。我们通常有这6个文件用于不同的目的:

  1. /etc/profile
  2. ~/.bash_profile
  3. ~/.bash_login
  4. ~/.bashrc
  5. ~/.profile
  6. ~/.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文件并键入以下命令:

代码语言:javascript
运行
复制
tar -cvjf /etc ~/path/to/destination
票数 6
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/423958

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档