shell脚本菜鸟教程(shell脚本入门到精通)
shell脚本菜鸟教程(shell脚本入门到精通)
2024-11-22 10:37:31  作者:解開伱褲帶  网址:https://m.xinb2b.cn/tech/pcm449249.html

#前言:良好的书写规范和书写习惯,会让我们减少很多不必要的麻烦,可以提高我们的效率,现在小编就来说说关于shell脚本菜鸟教程?下面内容希望能帮助到你,我们来一起看看吧!


shell脚本菜鸟教程

#前言:

良好的书写规范和书写习惯,会让我们减少很多不必要的麻烦,可以提高我们的效率!

1.基本的规范

#1.1.开头指定脚本解释器

#!/bin/bash 或 #!/bin/sh

#1.2.开头加版本版权等信息

#Date: 20:20 202-3-5

#Author:create by oldIT

#Mail: 123321@qq.com

#Function: This scripts function.....

#Version:2.1

#时间、作者、邮件、功能、版本

#1.3.脚本中不用中文注释

尽量用英文注释,防止出现乱码

#1.4.脚本以.sh为扩展名

例如:webstart.sh

#1.5.脚本应该存放在固定的路径下

如:/data/scripts/

#创建shell脚本程序的步骤

#第一步:创建一个包含命令和控制结构的shell文件,以.sh为扩展名

#第二步:修改这个文件权限使它可以执行修改方式:chmod u x 文件名

#第三步:执行方法

1:./example方法

2:bash 文件方法

3:source 文件

2.良好的书写习惯

#2.1.成对的符号应尽量一次性写出,然后退格在符号里增加内容,防止遗漏

如:{} [] '' ""

#2.2.中括号[]两端至少要有1个空格,输入技巧:先输入一对中括号,然后退一个格,输入两个空格,再退一格,双中括号[[]]也是这样写

[ name ]

[[ name ]]

#2.3.对于流程控制语句应该一次性将格式写完,再添加内容

#比如1:写if语句

if 条件内容 then 内容fi

#比如2:for循环语句

for do 内容done#提示:while,case和until等语句也是一样

#2.4.通过缩进让代码更易读(tab键)

if 条件内容 then 内容fi

#2.5.字符串赋值给变量应加双引号,并且等号前后不能有空格

如:my_file="test.txt"

#2.6.脚本中的单引号、双引号及反引号,必须为英文状态下的符号

'',"",``

#提示:前面为英文输入法状态下的符号。

3.shell脚本变量命名及引用变量规范

#3.1.全局变量命名

概述:全局变量也称环境变量,定义变量应该全部大写,如APACHE_ARE或APACHEARE,名字对应的内容要尽量明白,多个单词之间可以使用"_"号连接,全局变量的定义一般放在系统的全局路径中,采用export来定义

#示例

[root@game ~]# tail -1 /etc/profile

export NGINX_ERR="Hello Word"

[root@game ~]# source /etc/profile

[root@game ~]# echo $NGINX_ERR

Hello Word

#3.2.局部变量命名

概述:局部变量也称普通变量,在常规的脚本中,普通变量的命令尽量也进行统一,可以使用驼峰语法,就是第二个单词的首字母大写,如guoKenew,或者每个单词首字母大写,或全部大写或全部小写的方式,选择自己适合的。

在shell函数中的变量可以使用local方式进行定义,使其只在本函数作用域内生效,防止函数中的变量名与外部程序中的变量相同,从而造成程序异常

#示例

[root@game ~]# cat 1.sh #!/bin/bash n=5 IT(){ local a for ((a=0;a<n;a )) do echo 'guoke' done }IT

#3.3.变量的引用规范

概述:在引用变量的时候,如果变量前后都有字符,则需要使用${DIR},加大括号的方式引用变量,防止出现问题。当变量内容为字符串时,需要使用"${DIR}",外面加引号的方式引用变量。当变量为整数时,可以直接使用$DIR来引用变量,全局变量,局部变量,函数变量,数组变量都是这样。

说明:对于需要环境变量的java程序脚本等,在写脚本之前,最好通过export重新声明环境变量,以免在定时任务等场合中出现问题

4.shell函数的命名及函数定义规范

概述:shell函数的命名可以使用单词字母首写的形式,如CreateDir(),可以语义清晰,如可以使用CreateDir()替代CDir(),也可以小写形式createdir()。这有益对函数功能的理解,使函数更加直观清晰。

  • 清蒸鲜海鲈鱼正确做法 做法简单零失败的清蒸海鲈鱼
  • 2024-11-22清蒸鲜海鲈鱼正确做法 做法简单零失败的清蒸海鲈鱼葱段、葱丝、红辣椒丝和姜丝切好备用海鲈鱼洗净备用撒入葱段和姜丝烧一锅热水,水烧开后放入鱼大火蒸10分钟蒸好鱼后,倒掉多余的汤汁,夹走蒸鱼用的葱段和姜丝,重新铺姜丝、葱丝和红椒丝少一点热油,烧开后撒入葱。
  • (小学数学期末复习思维训练第二天)
  • 2024-11-22小学数学期末复习思维训练第二天大家好,我是师者说教育,今天给大家带来小学数学期末复习思维训练题目第二天练习内容,孩子一方面需要计算的训练,更重要的是要加强数学思维的训练,家长们行动起来,给自己的宝宝打印出来,让宝宝们练习吧所有的题。
  • 蛋糕工艺技术发展史(蛋糕工艺技术发展史)
  • 2024-11-22蛋糕工艺技术发展史#第二届今日头条全国新写作大赛#蛋糕的发展史【摘要】史料记载古埃及人做出历史上的第一个烘焙蛋糕,第一个熟练的面包师也即为埃及人烘焙即烘烤加工谷类食品,在欧美国家人们以烘焙食品为主食,最早的戚风蛋糕是一。
  • 洗衣机显示e2什么意思(洗衣机常见故障代码)
  • 2024-11-22洗衣机常见故障代码洗衣机显示e2表示洗衣机的盖子没有盖好,用户可以检查洗衣机的盖子是否被异物卡住,如果没有异物那么将盖子掀起重新关闭再尝试运行如果以上方法都不能解决问题建议联系售后进行解决洗衣机常见故障代码:1.F1表。
  • 佘诗曼凤凰三重奏(四个时期四个角色)
  • 2024-11-22四个时期四个角色2021年5月28日,TVB视后佘诗曼刚刚度过了自己的46岁生日很难想象,这位在《雪山飞狐》《倚天屠龙记》等作品中还带着婴儿肥的实力派女演员,如今早已是46岁的大龄女演员唯一值得我们欣慰的是,这些年阿。
  • 小哀知道柯南的秘密(柯南73真不喜欢小哀)
  • 2024-11-22柯南73真不喜欢小哀73真不喜欢小哀,前期靠她挽回收视率,后期强行淡化她戏份最开始的态度有些残忍,因为灰原哀的创作目的是为了挽救濒临死亡的漫画然后,综合这一干多集来看,灰原有两个重要作用,第一是官方故意引起CP纠纷,从而。
  • 纯净水设备使用技巧(纯净水设备的日常维护和保养)
  • 2024-11-22纯净水设备的日常维护和保养纯净水设备是水厂重要设备之一,想要开一个正规的水厂,就离不了纯净水设备,没有纯净水设备,就无法对水进行净化处理,达不到饮用水的标准,也就不用提灌装进瓶子或者桶里进行销售了那么众所周知,所有的设备都有日。
  • 羊肉和土豆可以一起吃吗(羊肉和土豆一起吃的功效)
  • 2024-11-22羊肉和土豆一起吃的功效羊肉和土豆可以一起吃功效如下:补充营养羊肉中的动物蛋白非常丰富,可以为人体提供充足的蛋白质,而土豆中含有多种维生素,这两种食物的营养成分有一定的差异,可为人体提供不同的营养改善口感羊肉带有独特的膻腥味。
  • 电气设备基础知识(转载--运行人员必备电气知识)
  • 2024-11-22转载--运行人员必备电气知识来源:集控圈电气设备的状态分为运行、热备用、冷备用、检修四种状态运行状态:是指电气设备的隔离开关及断路器都在合闸状态且带有电压热备用状态:是指电气设备具备送电条件和起动条件,断路器一经合闸就转变为运行。
  • 有哪些清润止咳汤(春温预防汤春咳治疗汤)
  • 2024-11-22春温预防汤春咳治疗汤喜欢我的文章,就关注我哦!春温预防汤鲜薄荷叶豆腐滚煎鸡蛋汤春温属于中医温病学说的急性外感热病,多发生于春季《黄帝内经》有说:“冬伤于寒,春必病温”,意思就是冬令时节感受了寒邪,邪伏化热,至春季伏邪由内。