shell脚本语法,shell脚本用法

shell脚本语法,shell脚本用法,shell脚本语言的使用(超全超详细)

本文主要介绍shell脚本语言的使用,通过示例代码非常详细的介绍,对大家的学习或者工作有一定的参考价值。让我们和边肖一起为有需要的朋友学习吧。

目录

1、shell概述2、脚本调用形式3、shell语法介绍4、变量5、预置变量6、变量扩展7、条件测试8、控制语句9、函数

1、shell的概述

Shell是一种脚本语言。

脚本:本质上,它是一个文件,其中存储了特定格式的指令。系统可以使用脚本解析器来翻译或解析指令并执行它们(不需要编译)。

Shell既是应用程序,也是脚本语言(应用程序解析脚本语言)。

命令解析器:

系统提供了一个shell命令解析器:sh ash bash

检查您的linux系统的默认分辨率:echo $SHELL

Shell脚本是一种脚本语言。我们只需要使用任何文本编辑器,根据语法编写相应的程序,增加可执行权限,就可以在安装了shell命令解释器的环境下执行。

2、脚本的调用形式

终端打开,系统自动调用:/etc/profile或~/。bashrc

/etc/profile

该文件为系统的每个用户设置环境信息。当用户第一次登录时,这个文件被执行,系统的公共环境变量在这里被设置。

从程序开始,一般也在这里设定。

~/.bashrc。用户主目录中的bashrc

它会在登录和打开任何终端时自动调用。

这个文件一般设置与个人用户相关的环境变量,比如交叉编译器的路径等等。

用户手动调用:用户实现的脚本。

3、shell语法初识

3.1.定义以:#!/bin/bash

#!用于声明脚本由哪个shell解释,否则使用默认shell。

3.2.单个“#”符号表示注释当前行的第一步:编写脚本文件。

步骤2:添加可执行权限。

chmod x xxxx.sh

第三步:跑步。

三种执行方式 (./xxx.sh bash xxx.sh . xxx.sh)

三种执行方法的区别(。/xxx.sh bash xxx.sh. xxx.sh)

./xxx.sh :先按照 文件中#!指定的解析器解析

如果#!只有当指定的解析器不存在时,才会使用系统默认解析器。

bash xxx.sh:指明先用bash解析器解析

如果bash不存在,将使用默认的解析器。 xxx.sh 直接使用默认解析器解析

三种实施情况:(重要)

注意:windows脚本在linux下执行。注意

执行结果:

将windows文件转换为unix文件

方法1:如果没有要安装的插件,则使用dos2unix

sudo apt-get安装dos2unix

Dos2unix shell脚本

如果转换成功,就可以执行操作。

方法二:

您需要用vi打开脚本,并在最后一行模式下执行它。

:设置ff=unix

4、变量

已定义变量

变量名=变量值

例如num=10

基准量

$变量名

取消设置:清除变量值

运行结果:

获取从键盘读取的值

运行结果:

案例:

在一行中显示和添加提示需要添加-p。

运行结果:

场景:读取多个值

运行结果:

只读案例变量:

运行结果:

查看环境变量:env

导出环境变量(该变量被其他shell识别)

脚本文件

源的命令用法:

源文件名

角色:在当前bash环境中读取并执行FileName中的命令。

注意:该命令通常由命令“.”替换。

比如源。bash_rc相当于.bash_rc。

注意:源命令和shell脚本之间的区别在于,

在当前bash环境中执行命令,而脚本启动一个子shell来执行命令。这样,如果命令设置环境变量(或别名等。)写入脚本,它只会影响子shell,并不能改变当前的BASH。因此,当通过文件(命令行)设置环境变量时,应该使用source命令。

可以在终端中读取:

读入其他sh脚本:

运行结果:

注意事项:

1.变量名只能包含英文字母下划线,不能以数字开头。

1_num=10错误

数字1=20是正确的

2.空格不能直接连接到等号的两边。如果变量本身包含空格,整个字符串应该用双引号或单引号括起来。

3.双引号和单引号的区别

双引号:您可以解析变量的值。

单引号:无法解析变量的值。

运行结果:

如果要在PATH变量后面追加一个路径,就这样写:(重要!)

导出路径=$PATH:/要添加的路径

5、预设变量

Shell直接提供了不需要定义的变量。

案例:

运行结果:

脚本标量的特殊用法

Add -e escape断行。

()是由子壳完成的。

{}由当前外壳执行

6、变量的扩展

6.1.确定变量是否存在。

6.2、字符串操作

7、条件测试

命令:用于测试字符串、文件状态和数字。

测试命令有两种格式:

测试条件或[条件]

使用方括号时,注意在条件两边加空格。

7.1、文件测试

7.2、字符串测试

7.3、数值测试

7.4、符合语句测试

8、控制语句

8.1、if控制语句

格式1:

if[条件1];然后

执行第一个程序。

其他

执行第二个过程。

船方不负担装货费用

格式2:

if[条件1];然后

执行第一个程序。

elif[条件2];然后

执行第二个过程。

其他

执行第三个程序。

船方不负担装货费用

案例:

案例:如果当前路径有文件夹,进入创建文件;如果没有,创建文件夹并输入创建文件。

运行结果:

案例:

运行结果:

8.2、案例

8.3,for循环语句

案例:

案例:扫描当前文件

8.4、当

8.5、直到

8.6、休息继续

9、函数

所有的函数在使用前都必须定义,函数必须放在脚本的开头,直到shell解释器第一次找到它才能使用。

案例:寻找最大值

案例:函数文件

fun.sh

24_sh.sh

关于shell脚本语言使用的这篇文章到此为止(超全超详细)。更多相关的shell脚本语言内容,请搜索我们之前的文章或者继续浏览下面的相关文章。希望大家以后能多多支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: