首先说明一点,shell和python在语法上有很多相同点,比如都不强制以不以;结尾,都是弱类型脚本语言。
[root@promote ~]# yum install vim -y
Shell 脚本通常用编辑器vim创建和修改。也可以使用其他编辑器,例如nano等。
创建脚本users.sh。用于显示当前用户。
[root@promote ~]# vim users.sh#按i进入编辑模式输入who#按Esc 退出编辑模式#输入:wq 保存文件#授予脚本可执行权限[root@promote ~]# chmod +x users.sh#查看当前目录文件[root@promote ~]# ls#执行脚本[root@promote ~]# ./users.sh root tty1 2019-03-31 11:17root pts/0 2019-03-31 14:08 (192.168.216.1)[root@promote ~]#
可以看出当前用户是root,分别在本机和192.168.216.1远程登录。vim快捷键还可以使用w保存修改,q退出编辑,q!不保存强制退出编辑。
下文正式开始Shell脚本编写。该脚本执行安装epel-release和htop两个软件。
[root@promote ~]# vim install_htop.sh#!/bin/bash#Date: 2019-03-31 14:55:55#Author: WeiWei#Version: v1.0#install epel-releaseyum install epel-release -y#install htopyum install htop -y
#!/bin/bash用于指定脚本解释器,本例指定解释器为/bin/bash,通常脚本还加上编写时间、作者和版本等信息,用于满足Shell编程规范推荐。从该脚本开始需要增加以上注释内容。
#开头为注释,通常位于脚本前后行或脚本行尾,解释器不会加以解释执行。脚本增加注释可以帮助自己和他人理解脚本用途,通常脚本不建议使用中文字符。
脚本文件如何执行呢?除了第一讲介绍方法外,下文介绍第二和第三种方法。
#和第一种方法缺少chmod赋予执行权限过程[root@promote ~]# bash install_htop.sh #第三种方法[root@promote ~]# source install_htop.sh
脚本执行过程中,会查找系统环境变量。env命令可以详细显示环境变量。
[root@promote ~]# env
思考内容:是否有其他命令显示系统变量?