立即登录

shell脚本基础语法 Shell脚本编程常用语法基础(一)

11/28 09:18:29

shell脚本基础语法 Shell脚本编程常用语法基础(一)

Shell脚本基本语法(一)

1.第一个shell脚本

在/home路径下新建一个目录,用于存shell脚本文件(因为/home通常用来存放用户数据,自定义的一些文件目录等。) 创建一个目录mkdir 目录名;创建/更新一个文件touch 文件名。shell脚本文件后缀为.sh.

2.脚本格式:

以#!/bin/bash开头【指定解析器】,可以通过如下命令查看:默认使用bash

vim编辑器下的shell脚本文件内容,[esc命令模型下,shift + zz保存并退出]

3. 执行脚本

(1) 执行shell脚本文件通过指令[sh xxx.sh]或者[bash xxx.sh],sh或者bash指令可以执行绝对路径下的脚本文件,例如:

[sh /home/shell_dir/helloworld_shell.sh]

(2)[./ xxx.sh] 执行脚本:

权限不够,没有可执行权限【因为通过sh或者bash去执行,是sh或bash解释器帮助去调用执行shell脚本基础语法,但./表示自己调用执行自己,需要可执行权限】

4. 在shell脚本里写多条命令

demo如下:

[>>]命令表示重定向

就是在shell脚本中写逻辑和指令的集合,然后执行shell脚本,实现功能。

5.shell中的变量

(1)系统变量:$HOME、$PWD、$SHELL、$USER等。

(2)自定义变量:变量名=值。$用来取变量的值。

注意:等号两边不能有空格。

撤销变量:[unset 变量名]

(3) 声明一个静态变量:[readonly 变量名].注意:静态变量不能unset, 重启虚拟机就消失了。

自定义变量命名规则:字母,数字,下划线。不能以数字开头。变量名建议大写。

在bash中,变量默认类型是字符串类型,无法直接进行数值运算。

变量的值如果有空格,需要用单引号或者双引号括起来。

可把变量提升为全局变量,可供其他shell程序使用。[export 变量名]

(4) 特殊变量:

①$n n为数字,0表示文件名,1~9表示参数,10及10以上的参数用{}括起来。

②$# 获取所有输入参数的个数

③$* 获取所有参数,一次性获取

④$@ 获取所有参数,一个一个获取

⑤$? 的值表示的是最后一次执行的命令的返回状态辅助论坛,如果值是0,表示上一条语句执行正确;如果非0(具体哪个数值由命令决定),说明上一条命令不正确。

6.运算符:

(1) $((运算式))或$[运算式];(2) expr 运算式;加+减-乘*除/取余% 【注意:expr要求数与运算符间有空格】

混合运算

如果使用括号运算,数字与运算符之间不用空格,并且乘是*,expr是*。

7.条件判断:

(1)语法:[ condition ] 注意:condition前后要有空格shell脚本基础语法,conditon非空返回true,空返回false.

(2)两个整数之间的比较:= 比较字符串;-lt 小于less than;-le 小于等于less equal;-eq 等于equal;-gt 大于greater than;-ge 大于等于greater equal;-ne 不等于not equal

(3)文件权限的判断:-r 读权限read;-w写权限write;-x可执行权限execute

(4)文件类型的判断:-f 文件存在并是一个常规文件file;-e文件存在existence;-d文件存在并且是一个目录directory

(5)多条件判断:逻辑与&&,逻辑或||

来源:【九爱网址导航www.fuzhukm.com】 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

最新资讯