[Shell]Bash变量:环境变量的配置文件和登录信息

-----------------------------------------------------------------------------------------

只有把环境变量放入配置文件中,才能每次开机自动生效。source命令:让配置文件直接生效,而不用注销或重新登录。

  source 配置文件  或者  . 配置文件(等同于 source 配置文件)

【系统中五类环境变量配置文件】

  /etc/profile

  /etc/profile.d/*.sh

  ~/.bash_profile

  ~/.bashrc

  /etc/bashrc

( etc目录内环境变量配置文件对所有用户有效,~开头的只对当前用户有效 )

【配置文件的执行流程】

  /etc/profile ------> ~/.bash_profile ------> ~/.bash_rc ------> /etc/bashrc ------- 命令提示符

    |                                   |

    |--------------> /etc/profile.d/*.sh(加载这里面的所有脚本) <--------|

              |

              |

           /etc/profile.d/lang.sh -----> /etc/locale.conf( LANG="en_US.UTF-8" )

  第一条路:

    /etc/profile -> /etc/profile.d/*.sh ->

  第二条路:

    vi ~/.bash_profile

# .bash_profile

# Get the aliases and functions ( 如果家目录下有.bashrc, 则执行 )
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin ( 环境变量追加家目录下的bin目录,我这里的$HOME是 /home/weichen )

export PATH ( 设为环境变量 )

    如果想把某个目录作为系统默认搜索命令的路径,并永久生效,就可以写在这个配置文件中。

    vi ~/.bashrc

# .bashrc

# Source global definitions  ( 如果有/etc/bashrc 文件,则执行 )
if [ -f /etc/bashrc ]; then
    . /etc/bashrc
fi

# Uncomment the following line if you don‘t like systemctl‘s auto-paging feature:
# export SYSTEMD_PAGER=

# User specific aliases and functions  ( 如果需要定义系统命令别名,可以写在这个配置文件 )

alias vi=vim
alias rm=‘rm -i‘
alias cp=‘cp -i‘
alias mv=‘mv -i‘

    vi /etc/bashrc

定义PS1变量
umask
PATH变量
调用/etc/profile.d/*.sh文件

(此文件仅针对 no login shell)

【总结】

  想让配置永久生效,可以写在上面的任意一个配置文件中,但要注意:是对所有用户生效还是当前用户;后面的文件配置内容将覆盖前面的,除非使用变量叠加。

【其它配置文件和登录信息】

  ~/.bash_logout

  默认是空的,如果想让系统注销时执行一些命令,可以写在这个配置文件中。

  ~/.bash_history

  历史命令的保存文件,只有 history -w 或者 注销登录 才会写到文件中,是系统排错时的重要依据,但是在设置密码后要清空历史命令。

  Shell登录信息:

  1. 本地终端登录信息:/etc/issue

    \d        显示当前系统日期

    \s        显示操作系统名称

    \l         显示登录的终端号,这个比较常用

    \m       显示硬件体系结构,如i386、i686等

    \n        显示主机名

    \o        显示域名

      \r         显示内核版本

    \t         显示当前系统时间

    \u         显示当前登录用户的序列号

  2. 远程终端登录信息:/etc/issue.net

  上面的转义符在/etc/issue.net文件中不能使用

  是否显示此登录信息,由ssh的配置文件/etc/ssh/sshd_config决定,加入“ Banner /etc/issue.net ” 行才能显示(记得重启SSH服务)

编辑:
vi /etc/ssh/sshd_config

加入:
#Banner none
Banner /etc/issue.net

重启:
service sshd restart

  3. 登录后欢迎信息:/etc/motd

    不管是本地登录还是远程登录,都可以显示此欢迎信息。

Link:http://www.cnblogs.com/farwish/p/4772115.html

@黑眼诗人 <www.farwish.com>

时间: 2024-07-30 13:50:36

[Shell]Bash变量:环境变量的配置文件和登录信息的相关文章

bash的环境变量配置文件

日期: 2015年08月30日 bash的配置文件 bash的配置文件用来配置bash的使用环境,在系统中保存这诸多事先定义好的变量 bash的环境变量常见的有: PATH:命令搜索路径 HISTFILE:命令历史的保存位置 SHELL:当前用户使用的 HOME:当前用户的家目录 变量的类型: 本地变量:只对当前shell进程有效,对其子shell以及其它shell都无效: 定义变量: [set]Var_Name="Value" 引用变量: ${Var_Name} 撤销变量: unse

Shell学习之环境变量配置文件(三)

Shell学习之环境变量配置文件 目录 环境变量配置文件简介 环境变量配置文件作用 其他配置文件和登录信息 环境变量配置文件简介 环境变量配置文件简介 环境变量配置文件中主要是定义对系统操作环境生效的系统默认环境变量,比如PATH.HISTSZE.PS1.HOSTNAME等默认环境变量. 让配置文件直接生效,不用重新登陆 source命令 source配置文件 .配置文件 有哪些配置文件 /etc/profile /etc/profile.d/*.sh ~/.bash_profile ~/.ba

bash shell中的环境变量

环境变量--bash shell使用环境变量来存储系统相关数据,并允许将数据存储在内存中. 环境变量分为:全局环境变量 本地环境变量 目录 全局环境变量 本地环境变量 设置全局环境变量 删除环境变量 PATH全局环境变量 设置系统环境变量的相关文件(登录.非登录.交互.非交互shell) 一.全局环境变量 在当前shell和子shell都可见 可以用printenv命令查看全局环境变量,大写表示是系统环境变量,小写表示是普通用户的环境变量 这是bash shell的一个标准约定,不是必须的,因此

学习鸟哥私房菜--linux bash 的环境变量ps1设置

bash里边的变量ps1是用户平时的提示符,系统默认为[[email protected] 工作目录]$.关于ps1的相关介绍详见:http://www.cnblogs.com/starspace/archive/2009/02/21/1395382.html 文章里边介绍了要想ps1的修改在重启有效需要将它写入~/.bash_profile中,但是这是针对login shell的(即各种tty终端界面等),对于进入xwindow启动的命令行终端这样的nonlogin shell就不管用了,这是

聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数]

聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数] 较之传统通过App.config和Web.config这两个XML文件承载的配置系统,.NET Core采用的这个全新的配置模型的最大一个优势就是针对多种不同配置源的支持.我们可以将内存变量.命令行参数.环境变量和物理文件作为原始配置数据的来源,如果采用物理文件作为配置源,我们可以选择不同的格式(比如XML.JSON和INI等) .如果这些默认支持的配置源形式还不能满足你的需求,我们还可以通过注册自定义ConfigurationSour

Shell学习笔记 - 环境变量配置文件

一.source命令 功能:在当前bash环境下读取并执行配置文件中的命令 1. 命令格式 source 配置文件  或  . 配置文件 2. 命令示例 [[email protected] ~]# source /etc/profile #让/etc/profile配置文件生效 [[email protected] ~]# . /etc/profile #与上面的命令效果一样 二.全局环境变量配置文件 全局环境变量配置文件会对所有用户生效. 1. /etc/profile 作用: 1) 定义U

Shell学习笔记 - 环境变量配置文件(转)

一.source命令 功能:在当前bash环境下读取并执行配置文件中的命令 1. 命令格式 source 配置文件  或  . 配置文件 2. 命令示例 [[email protected] ~]# source /etc/profile #让/etc/profile配置文件生效 [[email protected] ~]# . /etc/profile #与上面的命令效果一样 二.全局环境变量配置文件 全局环境变量配置文件会对所有用户生效. 1. /etc/profile 作用: 1) 定义U

【一点一滴,成材之基!】bash的环境变量配置文件

目录:(一)bash配置文件分类(二)bash配置文件的读取(三)配置文件实战 (一)bash配置文件分类(1.1)bash的配置文件主要有两类,第一种是全局配置文件,第二种是个人配置文件.其中全局配置文件主要包含三类:/etc/profile./etc/profile.d/*.sh./etc/bashrc这三种,而个人配置文件主要包括两类:~/.bash_profile.~/.bashrc这两种.(1.2)从类别的角度来分类主要可以分为profile类的文件和bashrc类的文件.(1.2.1

Shell编程 之 环境变量配置文件

1. 环境变量配置文件简介 1.1 source 命令:source 配置文件  或  . 配置文件 修改配置文件后,必须注销重新登陆才能生效,使用source命令可以不用重新登录 1.2 环境变量配置文件: 主要定义对系统操作环境生效的系统默认环境变量,如PATH等 1.3 常用登陆时的环境变量: 2. 环境变量配置文件功能 2.1 /etc/profile的作用: - USER变量 - LOGNAME变量 - MAIL变量 - PATH变量 - HOSTNAME变量 - HISTSIZE变量