Shell系列-编写及执行脚本

时间:2022-05-05
本文章向大家介绍Shell系列-编写及执行脚本,主要内容包括一、第一个Shell脚本、二、脚本构成及执行、三、简单脚本应用、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

一、第一个Shell脚本

1.什么是shell脚本? 提前写好可执行的语句,能够完成特定任务的文件(顺序执行,批量化处理;解释型程序)

2.shell版HelloWorld的诞生 脚本创建”三步走” -新建文本文件 -添加可执行的脚本语句(命令行) -添加x执行权限

[root@centos67-x64 /]# vim first.sh   //创建文件
#!/bin/bash
echo "Hello World"    //编写脚本语句
[root@centos67-x64 /]# chmod +x first.sh    //添加x权限
[root@centos67-x64 /]# ./first.sh     //运行脚本,查看运行结果
Hello World

二、脚本构成及执行

1.规范的脚本构成 #! :脚本声明(使用哪种解释器) # :注释信息(步骤、思路、用途、变量含义等) 可执行的语句

#!/bin/bash   //sha-bang调用标记
#A test program for shell-script  //注释信息
echo "Hello World"      //可执行的脚本语句或命令行

2.脚本的执行方式 2.1 方法一(作为”命令字”) -指定脚本文件的路径,前提是有x权限 2.2 方法二(作为”参数”)-不需要有x权限 -sh 脚本文件路径 -source 脚本文件路径 -.脚本文件路径

[root@centos67-x64 /]# sh first.sh 
Hello World
[root@centos67-x64 /]# ./first.sh 
Hello World

3.调试shell脚本 主要途径: -直接观察执行中的输出、报错信息 -通过sh -x 开启调试模式 -在可能出错的地方设置echo断点

[root@centos67-x64 /]# sh -x first.sh 
+ echo 'Hello World'
Hello World

三、简单脚本应用

1.例-1:快速配置YUM 目的:为新装的客户机配置好YUM仓库 条件:软件源位于file:///misc/cd;通过脚本建立/etc/yum.repos.d/rhel6.repo文件

[root@centos67-x64 shell]# ls /etc/yum.repos.d/
repo
[root@centos67-x64 shell]# vim rhel6.sh
#!/bin/bash
rm -rf /etc/yum.repos.d/*.repo
echo '[repo]
name=rhel6 repo
baseurl=file:///misc/cd
enable=1
gpgcheck=0
gpgkey='> /etc/yum.repos.d/rhel6.repo
[root@centos67-x64 shell]# chmod +x rhel6.sh 
[root@centos67-x64 shell]# ./rhel6.sh 
[root@centos67-x64 shell]# ls /etc/yum.repos.d/
repo  rhel6.repo
[root@centos67-x64 shell]# cat /etc/yum.repos.d/rhel6.repo 
[repo]
name=rhel6 repo
baseurl=file:///misc/cd
enable=1
gpgcheck=0
gpgkey=

2.例-2:快速搭建FTP服务器 目的:为新装的客户机搭建好vsftpd服务 条件:安装vsftpd;开启服务;开机自启

[root@centos67-x64 shell]# vim ftpon.sh
#!/bin/bash
yum -y install vsftpd &> /dev/null
/etc/init.d/vsftpd restart
chkconfig vsftpd on