前言
这是2018年写的文档,此篇大多都是shell基础,在此整理成博客,供大家交流使用,转载请注明出处,谢谢
shell脚本总结
shell脚本概述
作用:批量处理,自动化完成一系列维护任务
shell脚本介于系统内核和用户之间,相当于“命令解释器”,负责接收用户输入的命令,传给内核处理,并输出执行结果。
/bin/bash为目前大多数Linux版本采用的默认shell脚本
[root@localhost ~]# cat /etc/shells //查看系统所支持的脚本类型
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh
shell脚本(一)
1. 脚本示例
第一行 #! /bin/bash 表示此行以后的语句通过/bin/bash程序来解释
后面的 #… 表注释
将可执行的命令按顺序保存即可构成脚本
[root@localhost ~]# cat mysql.sh
#!/bin/bash
#安装MySQL
service iptables stop &> /dev/null
setenforce 0 &> /dev/null
umount /dev/sr0
mount /dev/sr0 /mnt &> /dev/null
#构建环境
rpm -e mysql-server mysql &> /dev/null
#卸载掉原来的MySQL
...... //此为安装mysql脚本摘录的部分内容
2. 脚本执行方法
3. 重定向与管道操作
3.1 重定向输出
">"覆盖
“>>” 追加
[root@localhost ~]# echo "hhhhhhhh" >test.txt
[root@localhost ~]# cat test.txt
hhhhhhhh
[root@localhost ~]# uname -m > test.txt
[root@localhost ~]# cat test.txt
x86_64
[root@localhost ~]# uname -r >> test.txt
[root@localhost ~]# cat test.txt
x86_64
2.6.32-696.el6.x86_64
3.2 重定向输入
"< "通过指定文件接收命令
[root@localhost ~]# echo "123" >pass.txt
[root@localhost ~]# passwd