Shell脚本的学习笔记

一.写一个简单的shell脚本


#!/bin/bash    或者是sh
echo "Hello World !"
#! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell。
echo 命令用于向窗口输出文本。

二.运行 Shell 脚本有两种方法:


1、作为可执行程序
将上面的代码保存为 test.sh,并 cd 到相应目录:
chmod +x ./test.sh  #使脚本具有执行权限
./test.sh  #执行脚本

2、作为解释器参数
这种运行方式是,直接运行解释器,其参数就是 shell 脚本的文件名,如:
/bin/sh test.sh

3.变量
在定义变量时,变量和等号之间不需要空格有空格。
your_name="1234.xx"
遵循以下原则:
注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:
命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。
中间不能有空格,可以使用下划线(_)。
不能使用标点符号。
不能使用bash里的关键字(可用help命令查看保留关键字)。
传递变量使用$符号,可以加{}来作为识别的边界。
删除变量:使用 unset 命令可以删除变量。语法:unset variable_name
提取子字符串:
以下实例从字符串第 2 个字符开始截取 4 个字符:
string="runoob is a great site"
echo ${string:1:4} # 输出 unoo
查找子字符串:
查找字符 i 或 o 的位置(哪个字母先出现就计算哪个):
string="runoob is a great site"
echo `expr index "$string" io`  # 输出 4
注意: 以上脚本中 ` 是反引号,而不是单引号 ',不要看错了哦。


三.Shell 传递参数


向脚本传递参数,脚本内获取参数的格式为:$n。n 代表一个数字,
为脚本设置可执行权限,并执行脚本,输出结果如下所示:
$ chmod +x test.sh 
$ ./test.sh 1 2 3
另外,还有几个特殊字符用来处理参数:图片


四.Shell 基本运算符:Shell 和其他编程语言一样,支持多种运算符

包括:
算数运算符
关系运算符
布尔运算符
字符串运算符
文件测试运算符
expr 是一款表达式计算工具,使用它能完成表达式的求值操作。
例如,两个数相加(注意使用的是反引号 ` 而不是单引号 '):
#!/bin/bash
val=`expr 2 + 2`
echo "两数之和为 : $val"
两点注意:
表达式和运算符之间要有空格,例如 2+2 是不对的,必须写成 2 + 2,这与我们熟悉的大多数编程语言不一样。
完整的表达式要被 ` ` 包含,注意这个字符不是常用的单引号,在 Esc 键下边。
算术运算符
下表列出了常用的算术运算符,假定变量 a 为 10,变量 b 为 20:


关系运算符
关系运算符只支持数字,不支持字符串,除非字符串的值是数字。
下表列出了常用的关系运算符,假定变量 a 为 10,变量 b 为 20:


布尔运算符
下表列出了常用的布尔运算符,假定变量 a 为 10,变量 b 为 20:

Linux shell 命令,-d, !-d + dirName
部分是判断表达式,-d 表示判断是存在该目录,!-d 不存在该目录。

逻辑运算符
以下介绍 Shell 的逻辑运算符,假定变量 a 为 10,变量 b 为 20:

字符串运算符
下表列出了常用的字符串运算符,假定变量 a 为 "abc",变量 b 为 "efg":

文件测试运算符
文件测试运算符用于检测 Unix 文件的各种属性。
属性检测描述如下

sed ′s/\%//g‘  :s表示替换,\%就表示百分号,s/\%//将%替换为空,最后的g标志表示全部替换,即删除所有的百分号
 

猜你喜欢

转载自blog.csdn.net/wyz0516071128/article/details/83312644
今日推荐