一、如何编写脚本:
1、脚本文件的第一行,顶格:给出解释器路径,用于指明解释执行当前脚本程序的解释文件
常见的解释器:
#!/bin/bash
注意:脚本中除了第一行声明解释器,其他的#都会被当做注释行。
2、shell脚本编程:过程式编程,解释运行,依赖于外部程序运行.
二、运行脚本:
1、赋予执行权限,并直接运行此文件;相对路径或绝对路径;
chmod +x /PATH/TO/SCRIPT_FILE
2、直接运行解释器。将脚本以命令参数传递给解释器程序
bash /PATH/TOSCRIPT_FILE
示例:
1、显示/etc目录下所有以大写S或小写s开头的文件或目录本身
#!/bin/bash
ls -d /etc/[Ss]*
2、显示/var目录下的所有文件或目录本身,并将显示结果中的小写字母转换成大写字母
#!/bin/bash
ls -d /var/*|tr [a-z] [A-Z]
三、bash的配置文件:
1、profile类:为交互式登录shell进程提供配置
2、bashrc类:为非交互式shell进程提供配置
四、登录类型:
1、交互式登录shell进程:
直接通过某终端输入账号和密码后登录打开的shell进程;
使用su命令:su -USERNAME 或使用su -| USERNAME 执行的用户切换;
2、非交互式登录shell:
su USERNAME 执行的登录切换
图形界面下打开的终端;
运行脚本
3、profle类:
全局:对所有用户都生效;
/etc/profile
/ec/profile.d/*.sh
用户个人:仅对当前用户有效
~/.bash_profile
功用:
1、定义环境变量;只要用户登录就生效
2、运行命令或脚本,只要用户登录就执行一个shell或者命令
bashrc类:
全局:
/etc/bashrc
用户个人:
~/.bashrc
功用:
1、定义本地变量
2、定义命令别名
五、配置生效的优先级:
1、交互式登录shell进程:
/etc/profile –> /etc/profile.d/*.sh –> /etc/profile.d/*
2、非交互式登录shell进程:
~/.bashrc –> /etc/bashrc –> /etc/profile.d/*
3、让通过配置文件定义的特性立即生效:
(1)、通过命令重复定义一次;
(2)、让shell进程重读一次配置文件;
source /PATH/TO/SOMEFILE
. /PATHTO/SOMEFILE
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/95949