linux - 用户登陆自加载脚本

原创 2015年12月08日 15:07:47

公共加载脚本

/etc/profile

此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置

/etc/bashrc | /etc/bash.bashrc (In Ubuntu)

为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.

私人加载脚本

~/.bash_profile

每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.

~/.bash_login

若bash是以login方式执行时,读取~/.bash_profile,若它不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。

~/.profile

if ~/.bash_profile or ~/.bash_login exists,~/.profile is not read by bash(1)

Ubuntu下的.profile

if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fi
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

~/.bashrc

该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取.
大多数自登陆加载操作都放在这个文件中.比如:
- ls的一些别名设置:

# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
  • .bash_aliases自定义别名文件的加载
# Add an "alert" alias for long running commands.  Use like so:
#   sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

~/.bash_logout

当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是”父子”关系.

参考:http://www.ahlinux.com/shell/20239.html

linux中使用shell脚本自动登录ftp服务器下载上传文件。

linux中使用shell脚本自动登录ftp服务器下载上传文件。 #/bin/bash  DATE=`date -d '1 days ago' +%Y%m%d`  GAMEDIR=/home/log/...
  • u012207077
  • u012207077
  • 2013年09月26日 17:12
  • 8488

Shell脚本实现自动输入密码登录服务器

这里我们主要讲使用expect实现自动输入功能: 安装: CentOS下安装命令,如下: yum install  expect 开始之前的一个简单实例: #!/usr/bin/expect...
  • lufeisan
  • lufeisan
  • 2016年12月06日 16:55
  • 5460

shell脚本记录登录到本机的用户,登录时间和登录位置

有这样一个需求,记录所有登录用户的信息,包括用户名、登录时间和登录位置到/var/log/login 日志的格式为 username   login_location  login_time ...
  • quanliyadan
  • quanliyadan
  • 2013年09月21日 01:01
  • 2508

linux系统用户登陆时脚本执行顺序

在用户登录的时候执行sh脚本的顺序:每次登录的时候都会完全执行的 /etc/profile.d/file /etc/profile /etc/bashrc /root/.bashrc /ro...
  • lineuman
  • lineuman
  • 2016年07月06日 20:52
  • 201

Linux学习笔记(6)----Bash shell 登陆后配置文件的加载

在Linux中,有许多命令,其中包括 alias命令别名 和 bash的内置命令 那么我们敲入一个命令之后,系统是根据什么顺序优先执行的呢? 鸟哥书中这样表示: 1.以相对/绝对路径执行命令,例...
  • dh626995617
  • dh626995617
  • 2016年02月15日 17:36
  • 882

linux批量用户加载

  • 2011年08月28日 14:43
  • 478B
  • 下载

zabbix3.0.4-agent通过shell脚本获取mysql数据库登陆用户

zabbix3.0.4获取数据库登陆用户趋势详解 主要思路: 通过zabbix客户端shell脚本mysql命令取出用户表中的数据将结果反馈给zabbix,画出趋势图 1.修改zabbix-ag...
  • reblue520
  • reblue520
  • 2017年02月13日 17:53
  • 697

OSX: 实用脚本程序(bash scripts)系列-22- 用户登陆历史

好久木有分享代码了,今天找到一个,这个挺好,可以从log里面把用户登陆/登出的用户名和时间显示出来,对于想看看电脑何时/谁使用了多长时间电脑有所帮助,这个是网上抄过来的:...
  • afatgoat
  • afatgoat
  • 2014年04月09日 22:12
  • 1548

linux0.11是如何加载并执行一个二进制可执行文件和shell脚本文件的?

1.linux0.11是如何加载并执行一个二进制可执行文件和shell脚本文件的?   答:linux0.11仅支持ZMAGIC执行文件格式,并且执行文件代码都从逻辑地址0开始执行,因此不支持含有代...
  • zzsfqiuyigui
  • zzsfqiuyigui
  • 2013年04月18日 22:06
  • 835

Linux操作系统学习_用户进程之由新进程创建到可执行程序的加载

fork()函数大家应该都不陌生,一个现有进程可以调用fork函数来创建一个新进程,由fork()创建的新进程通常被称为子进程。fork()函数被调用一次,但返回两次,两次返回的区别在于,子进程的返回...
  • nodeathphoenix
  • nodeathphoenix
  • 2014年09月15日 14:33
  • 2313
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:linux - 用户登陆自加载脚本
举报原因:
原因补充:

(最多只允许输入30个字)