一、shell 编程注意事项 shell 编程有哪些注意事项 shell 命名:Shell脚本名称命名一般为英文、大写、小写,后缀以.sh 结尾 不能使用特殊符号、空格 见闻之意,名称要写的一眼可以看出功能 shell 编程 首行需要 #!/bin/bash 开头 shell 脚本 变量 不能以 数字、特殊符号开头,可以使用下划线—,但不能 用破折号 -
二、第一个shell 脚本 hello world 创建一个编程项目 —Hello World
创建一个Helloword.sh 文件
[root@aly_server01~]# touch Helloword.sh
编辑Helloword.sh 文件
[root@aly_server01~]# vim Helloword.sh [root@aly_server01~]# cat Helloword.sh #!/bin/bash
This is ower first shell
by author rivers 2021.09
echo "hello world" [root@aly_server01~]# [root@aly_server01~]# ll Helloword.sh -rw-r--r-- 1 root root 85 Sep 20 22:26 Helloword.sh
赋予执行权限
[root@aly_server01~]# chmod o+x Helloword.sh
运行helloword.sh 脚本
[root@aly_server01~]# ./Helloword.sh hello world [root@aly_server01~]#
三、判断语句 一般在了解了简单变量等之后,最重要的就是判断语句、循环语句等,判断语句在shell中有以下表达。
if 常见判断逻辑运算符详解 常见逻辑判断运算符
-f 判断文件是否存在 eg: if [ -f filename ]; -d 判断目录是否存在 eg: if [ -d dir ]; -eq 等于,应用于整型比较 equal; -ne 不等于,应用于整型比较 not equal; -lt 小于,应用于整型比较 letter; -gt 大于,应用于整型比较 greater; -le 小于或等于,应用于整型比较; -ge 大于或等于,应用于整型比较; -a 双方都成立(and) 逻辑表达式 –a 逻辑表达式; -o 单方成立(or) 逻辑表达式 –o 逻辑表达式; -z 空字符串; -x 是否具有可执行权限 || 单方成立; && 双方都成立表达式。
循环还是用for和while与其他语言相似
最后我们尝试编写一个http脚本 [root@web-server01~/script]# vim httpd_start.sh
check http server start|stop|starus
by author rivers on 2021-9-27
while true do echo -e " \033[31m start \033[0m \033[32m stop \033[0m \033[33m status \033[0m \033[34m quit \033[0m " read -p "请输入你的选择start|stop|quit:" char case $char in start) systemctl start httpd && echo "httpd服务已经开启" || echo "开启失败" ;; stop) systemctl stop httpd && echo "httpd服务已经关闭" || echo "关闭失败" ;; restart) systemctl restart httpd && echo "httpd服务已经重启" || echo "重启失败 " ;; status) systemctl status httpd && echo -e " httpd 的服务状态
;; quit)
心得体会:学习shell遇到的问题还是蛮多的。但总能有解决方法。需要我们在课外下功夫去积累,任何语言都是这样上课只是冰山一角。学习shell编程的最好方法之一是通过解决实际问题来学习。例如,尝试编写一个脚本来完成特定的任务,例如批量重命名文件,搜索文件Q内容等。同时阅读其他人编写的shell脚本可以帮助你学习新的技巧和编程风格。可以在Gittub、Stack Overtlow等网站上找到很多开源的shel脚本 项目,阅读和理解这些代码可以帮助你提高自己的编程能力。练习编写shel脚本可以帮助你更好地理解shell编程语言的使用。可以从简单的脚本开始,然后逐渐增加复杂度。可以通过尝试不同的脚本来练习shell编程的不同方面,例如条件语句、循环、文件操作、宇符串处理Q等。