Bash shell 的操作环境
路径与命令搜寻顺序
- 以相对/绝对路径运行命令,例如『 /bin/ls 』或『 ./ls 』;
- 由 alias 找到该命令来运行;
- 由 bash 内建的 (builtin) 命令来运行;
- 透过 $PATH 这个变量的顺序搜寻到的第一个命令来运行。
bash 的进站与欢迎信息: /etc/issue, /etc/motd
bash 的环境配置文件
login 与 non-login shell
login shell:取得 bash 时需要完整的登陆流程的,就称为 login shell。举例来说,你要由 tty1 ~ tty6 登陆,需要输入用户的账号与密码,此时取得的 bash 就称为『 login shell 』啰;
non-login shell:取得 bash 接口的方法不需要重复登陆的举动,举例来说,(1)你以 X window 登陆 Linux 后, 再以 X 的图形化接口启动终端机,此时那个终端接口并没有需要再次的输入账号与密码,那个 bash 的环境就称为 non-login shell了。(2)你在原本的 bash 环境下再次下达 bash 这个命令,同样的也没有输入账号密码, 那第二个 bash (子程序) 也是 non-login shell 。
/etc/profile (login shell 才会读)
- 如果你想要帮所有使用者配置整体环境,那就是改这里
- 还会去呼叫外部的配置数据
- /etc/inputrc
- /etc/profile.d/*.sh
- /etc/sysconfig/i18n
- ~/.bash_profile (login shell 才会读)
- ~/.bash_profile
- ~/.bash_login
- ~/.profile
- bash 的 login shell 配置只会读取上面三个文件的其中一个, 而读取的顺序则是依照上面的顺序
source :读入环境配置文件的命令
范例:将家目录的 ~/.bashrc 的配置读入目前的 bash 环境中 [root@www ~]# source ~/.bashrc <==底下这两个命令是一样的! [root@www ~]# . ~/.bashrc
- ~/.bashrc (non-login shell 会读)