一,编写第一个 Hello World 程序
- ./ 是执行文件
2.echo 表示命令用于输出文本信息
3.变量名和等号之间不能有空格
4.要使用变量, 在变量前面加$
5.建议给所有变量加花括号,这是好的编程习惯
6.unset 指令删除变量.删除的变量不能再被使用
二.shell 脚本语法:
1.# 就是注释,没有多行注释,只有单行注释
2.只读变量:
- 1.readonly 不允许修改
3.删除变量 - 语法:unset 变量名
4.变量类型 - 1.本地变量
- 2.局部变量 local name='Andy'
- 3.环境变量 export name="Dream"
- 4.位置变量
-
5.特殊变量
- $(0)是脚本文件的名字
- $(?)->表示上一个命令状态返回值
0:表示执行成功
1:程序执行结果
2:表示程序状态返回码(0-255)(1,2,127都是系统错误)
$(#) ->参数个数
$(*)->参数列表
$(@)->参数列表
)->后去当前 shell 进行 ID
$(!)->执行上一个指令 PID
6.字符串语法
语法一:从左边开始检查,$(变量名#删除字符 正则)
1.获取字符串长度
name="Andy"
echo ${#name}2.截取字符串长度
从索引2开始往后截取3个
name="I have a Dream"
reault={result}3.截取字符串从某索引到最后
result={reault}4.删除字符串,#
name="I have a dream"
reault={result}
- 4.1.查找字符串,删除前面的所有的字符,包括它自己
name="I have a dream"
reault=(reault)
得到: ve a Dream
- 4.2.指定删除范围(第一个开始删除,删除到哪里)
name="I have a Dream"
result={result}
得到: ve a Dream
语法二:$(变量名##删除字符串 正则表达式)
- 从右边开始删除
name="I have a Dream"
result={result}
得到: I have a Dre
语法三:{name%a}
echo ${result}
得到: I have a Dre
(的位置在右边就是往右边删除,在左边则是往左边删除)
总结:从左边删除到右边
.# ->表示查询方向从左到右
.##->表示查询方向从右到左
从右边删除到左边
%->表示查询方向从右到左
%%->表示查询方向从左到右