知识点
1.chmod u+x 脚本名
然后直接输入脚本路径执行
(要求shell脚本中第一行加入#!解释器)
(因为这是文件执行,需要有执行权限)
2./bin/bash 脚本名
(如果shell脚本中第一行加入#!解释器,则自动忽略,仍然以bash作为shell)
(这是运用解释器处理文件,所以不需要给文件加执行权限)
总之,上述的两种方法中真正执行永远的都是shell(默认为bash)
当然#!还可以跟/usr/bin/python,/usr/bin/perl
3. 脚本调试
bash -n 脚本路径 语法检测
bash -x 脚本路径 调试执行,把执行成功的结果显示,不成功的报错
shell脚本的结构
1,声明
脚本通过那个解释器运行
Linux系统默认使用的是bash
2,脚本描述
解释当前脚本的作用和功能
3,脚本作者练习方式
脚本故障方便联系写脚本的工程师
4,脚本执行的命令
通过脚本命令执行处理数据,实现自动化运维
重定向和管道符
1,基本输入输出
标准输出:文件号0,接收或者读取用户输入的数据,用<表示
标准的输出:文件号1,将数据显示在屏幕或者文件中,用>表示,>>表示追加输出
错误输出:文件号2,错误输出显示在屏幕或者文件中,用2>表示
混合输出:对或者错都可以显示或者输出到文件中先后杀死,用&>表示
2,管道符
把钱一个命令执行的结构,当成一个命令处理的对象
3,输出的使用
[root@centos01~]# echo “shell world” > ./1.txt //输出到文件
[root@centos01~]# echo “shell world” //输出到屏幕
4,将错误输出数据,输入到1.txt文件
[root@centos01~]# asdasd 2> 1.txt
5,混合输出显示的1.txt
[root@centos01~]# echo “aa” &> 1.txt
6,管道符的应用
[root@centos01~]# netstat -anptu | grep sshd
实验
#实验要求#
编写start status stop三个脚本程序 用来启动 停止各种系统服务 例如 直接执行 stop crond
start crond 命令即可停止 启动 crond服务
新建welcome脚本
添加执行权限
编写status脚本
添加执行权限
查看
编写stop脚本
添加权限
执行
添加start脚本
添加权限
执行