shell 脚本基础(二)
编写shell脚本注意事项
1.须以“#!/bin/bash”开头,表示引用bash解释器进行解释运行
2.运行脚的方法:绝对路径运行/sh +文件名
3.shell脚本执行是通过打开一个子shell进程实现的
脚本生效分类
1.profile:为交互式登陆(通过终端输入帐号密码后打开的shell进程,如su - username/su -l username)进程提供配置
作用:1.用来定义环境变量
2.运行命令或脚本
全局生效:/etc/profile,/etc/profile.d/*.sh(可以其目录中新建脚本执行开机启动)
当前用户生效:~/.bash_profile
生效顺序:/etc/profile->/etc/profile.d/*.sh->~/.bash_profile->~/.bashrc->/etc/bashrc
用户登录系统后首先会加载 /etc/profile 全局环境变量文件,这是 Linux 系统上默认的 Shell 主环境变量文件,系统上每个用户登录都会加载这个文件。
当加载完 /etc/profile 文件后,才会执行 /etc/profile.d/目录下的脚本文件,这个目录下的脚本文件由很多,例如:系统的字符集设置(/etc/sysconfig/i18n)等,以便用户登录后即可运行脚本
之后开始运行 $HOME/.bash_profile(用户环境变量文件),在这个文件中,又会去找 $HOME/.bashrc(用户环境变量文件),如果有,则执行,如果没有,则不执行,在$HOME/.bashrc文件中又会去找/etc/bashrc(全局环境变量文件),如果有,则执行,如果没有,则不执行。
2.bashrc:非交互式登陆(su username/图形界面/运行脚本)的shell进程提供配置
作用:1.定义本地变量
2.定义命令别名
全局生效:/etc/bashrc
当前用户生效:~/.bashrc
生效顺序:~/.bashrc->/etc/bashrc->~/etc/profile.d/*.sh
通过配置文件定义的特性立即生效 :
1.通过命令行重复执行一次;
2.让shell进程重新配置文件
#soure /PATH/FROM/CONF.FILE
#./PATH/FROM/CONF.FILE
浙公网安备 33010602011771号