linux 中shell脚本

shell:是用c编写的程序

shell脚本:是一种shell编写的脚本程序。

shell编程根java、php编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释其就可以了

linux的shell种类众多,常见的有:

Bourne Shell(/usr/bin/sh或/bin/sh)

Bourne Again Shell (/bin/bash)

C Shell (/usr/bin/csh)

k Shell (/usr/bin/ksh)

Shell for Root(/sbin/sh)

常用Bash,也就是Bourne Again Shell,易用且免费。Bash 也是大多数linux系统默认的Shell

#!告诉系统其后路径所指定的程序即是解释此脚本文件的Shell 程序

Shell 程序步骤

1、创建一个文件,扩展名为.sh

2、修改文件的权限为可执行文件

3、执行

Shell结构

1、#! 用来指定执行脚本的shell

2、# 注释

3、命令和控制结构

Shell变量

命名规则:

1、命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。

2、中间不能有空格,可以使用下划线(_).

3、不能使用标点符号

4、不能使用bash里的关键字

使用规则:

1、习惯用大写字母来命名变量

2、赋值时,“=”前后不能有空格

3、命令的执行结果赋值给变量时,使用反单引号 如 TIME=`date`

4、使用变量时,使用$变量名 ${变量名}

只读变量

readonly  变量名  只读变量的值不能被改变

删除变量

unset 变量名  但不能删除只读变量

临时变量:也叫局部变量,在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量

永久变量:也叫环境变量,所有程序,包括shell启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行,必要的时候shell脚本也可以定义环境变量

shell中的字符串(一般shell脚本就数字和字符串类型)

①:字符串,不用单引号或双引号引着

②:字符串,使用单引号引着

③:字符串,使用双引号引着

   一、拼接字符

1、无缝拼接:"  "${}""

2、双引号内 直接使用变量 "aad${}"

二、获取字符串长度

语法1:${#name}

语法2:expr length "${name}"

三、提取子字符串

语法1:${name:startIndex:length}

语法2:${name:startIdex}

语法3:${name:0-Index:length}

语法4:${name:0-Index}

${name*#<指定字符>}从左边删除到第一个指定字符(指定字符也删除)

${name*##<指定字符>}从左边删除到最后一个指定字符(指定字符也删除)

${name%*<指定字符>}从右边删除到第一个指定字符(指定字符也删除)

${name%%*<指定字符>}从右边删除到最后一个指定的字符(指定字符也删除)

四、数组

定义数组:arrayname=(value1 value2  .....)   以空格做为分隔符 其中的数据类型可以不一样,且不定长度

arrayname=(value1

value2

.......)以回车做为分隔符

直接元素赋值

arrayname[0]=value1

arrayname[1]=value2

.................

读取数组元素

${name[i]}

获取数组所有的值

${name[@]}或者${name[*]}

获取数组长度

${#name[@]}或者${name[*]}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值