欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > Linux 中 .bash_history、.bash_logout 等用户配置文件

Linux 中 .bash_history、.bash_logout 等用户配置文件

2025/3/17 17:32:15 来源:https://blog.csdn.net/IT_ZRS/article/details/143178313  浏览:    关键词:Linux 中 .bash_history、.bash_logout 等用户配置文件

image-20241022143859028


目录

    • 前言
      • .bash_history
      • .bash_logout
      • .bash_profile
      • .bashrc
      • .cshrc
      • .tcshrc
      • .viminfo
    • 总结


前言

在 Linux 中我们经常会看见用户家目录下存在 .bash_history、.bash_logout、.bash_profile、.bashrc、.cshrc、.tcshrc、.viminfo 这写文件,那它们区别是什么呢?又有什么作用呢? 实际上,这些文件是 Linux 系统中的用户配置文件,负责存储用户的历史记录、shell 环境和行为定制等设置,不同的文件有不同的作用和用法。

.bash_history

  • 作用:存储用户在 Bash shell 中输入的历史命令。

  • 位置:位于用户的主目录(~/.bash_history)。

  • 用法:当你在 Bash 中输入命令后,系统会将其记录到 .bash_history 文件中。下次打开 shell 时,可以通过上下箭头或 history 命令查看命令历史。

  • 案例:

    # 限制历史记录条数
    export HISTSIZE=1000      # 内存中保留的条数
    export HISTFILESIZE=2000  # 文件中保存的条数
    

.bash_logout

  • 作用:在用户退出登录 shell 时执行,用于执行一些清理操作。

  • 位置:位于用户的主目录(~/.bash_logout)。

  • 用法:当用户退出 Bash 登录 shell 时(例如在远程登录后输入 exit),.bash_logout 文件中的命令将被执行。可以在此处放置一些清理操作,如删除临时文件或清空缓存。

  • 案例:

    # 清空屏幕
    clear
    

.bash_profile

  • 作用:用于配置用户的登录 shell 环境。当用户通过登录终端启动一个新的 shell 时(登录 shell),.bash_profile 会被加载。

  • 位置:位于用户的主目录(~/.bash_profile)。

  • 用法:通常用于设置环境变量、启动其他配置文件(如 .bashrc),或自定义 shell 的行为。

  • 案例:

    # 设置环境变量
    export PATH=$PATH:/usr/local/bin# 调用 .bashrc
    if [ -f ~/.bashrc ]; thensource ~/.bashrc
    fi
    

.bashrc

  • 作用:定义交互式 shell(非登录 shell)的配置,用于设置别名、函数、提示符等。

  • 位置:位于用户的主目录(~/.bashrc)。

  • 用法:每当你打开一个新的终端窗口时,.bashrc 会被加载。通常用来配置与 shell 交互相关的内容。

  • 案例:

    # 别名定义
    alias ll='ls -l'# 自定义提示符
    export PS1='\u@\h:\w\$ '
    

注意:这里要明确两个概念,登录 shell非登录shell

  • 登录 shell:指用户通过登录终端(如 xshell 工具)启动一个新的 shell,系统会执行 .bash_profile。登录 shell 是指用户需要输入用户名和密码的情况,例如通过 SSH 登录或在控制台登录;
  • 非登录 shell:指用户打开一个非登录终端,比如在已经登录的系统中,通过终端程序(如 GNOME Terminal)打开一个新的 shell 窗口时,.bashrc 会被加载。

.cshrc

  • 作用:用于 C Shell(csh)的初始化配置。每次用户启动 csh 时,.cshrc 文件会被执行。

  • 位置:位于用户的主目录(~/.cshrc)。

  • 用法:设置 csh 环境中的别名、路径、环境变量等。它类似于 Bash 中的 .bashrc,但用于 csh shell。

  • 案例:

    # 设置路径
    set path = (/usr/local/bin $path)# 设置别名
    alias ll 'ls -l'
    

.tcshrc

  • 作用:用于 tcsh(改进版 C Shell)的初始化配置。和 .cshrc 类似,它在用户启动 tcsh 时执行。

  • 位置:位于用户的主目录(~/.tcshrc)。

  • 用法:配置 tcsh shell 的环境变量、别名和其他行为设置。

  • 案例:

    # 设置路径
    set path = (/usr/local/bin $path)# 设置别名
    alias ll 'ls -l'
    

.viminfo

  • 作用:存储 Vim 编辑器的历史信息,包括光标位置、最近编辑过的文件、搜索记录等。

  • 位置:位于用户的主目录(~/.viminfo)。

  • 用法:Vim 会自动读取并写入 .viminfo 文件,保存用户的编辑历史,使得下次使用 Vim 时可以恢复上一会话的部分状态(如最近编辑过的文件)。

  • 案例:

    # vimrc 文件中可以设置 .viminfo 的行为
    set viminfo='20,\"100    # 保存最近 100 条命令
    

总结

  • .bash_history:Bash 命令的历史记录。
  • .bash_logout:用户退出 Bash 登录 shell 时执行的脚本。
  • .bash_profile:登录 shell 的配置文件,通常用于设置环境变量。
  • .bashrc:非登录 shell 的配置文件,通常用于设置别名、提示符等交互行为。
  • .cshrc:C shell 的配置文件。
  • .tcshrc:tcsh shell 的配置文件。
  • .viminfo:Vim 编辑器的历史记录,保存编辑器的状态。

这些文件共同帮助用户定制和管理 Linux 系统中 shell 和编辑器的行为。

—END

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词