Shell脚本和编程:
1、语法和命令:
变量:
自定义变量:作用域:当前shell 声明方式 = 规范:字符串、整型、浮点型、日期型
环境变量: 作用域:当前shell及其子shell 声明方式 export、declare -x
系统环境变量: 作用域:所有shell 声明方式:启动加载
系统环境变量:
变量名:$D 含义:当前shell名称/脚本名称 常见操作:$1,$2等可以获取到传入参数
$# 含义:传入脚本的参数数量 常见操作: if[$# -gt 1]
$* 含义:传入脚本的所有参数
$? 含义:上条命令执行的状态码 常见操作:if[$? -eq D]
$PS1 含义:命令提示符 常见操作:export PS1=" "
$HOME 含义:用户主文件夹 常见操作:cd ~
$PATH 含义:全局命令的搜索路径 常见操作:PATH=$PATH:[新增路径]
管道与管道符| 作用是将前一个命令的结果传递给后面的命令
输出重定向符号:
>: 覆盖写入文件
>>:追加写入文件
\2>:错误输出写入文件
&>:正确和错误输出统一写入到文件中
输入重定向符号:
< 以及<<
shell中提供了test、[、[[三种判断符号,可用于:整数测试、字符串测试、文件测试
语法:test condition 或者 [ condition ] 或者 [[ condition ]]。 \
注意:中中括号前后要有空格符,[和test是命令,只能使用自己支持的标志位,<、>、=只能用来比较字符串,中括号内的变量,最好都是用引号括起来,[[更丰富,在整型比较中支持<、>、=,在字符串比较中支持=~正则
分支语句:
语法一:
if condition;then
程序段
elif condition; then
程序段
else
程序段
fi
语法二:
case $变量 in :
"第一个变量内容")
程序段
;;
"第二个变量内容")
程序段
;;
*)
程序段
;;
esac
循环:
while condition; do 程序段 ;done
util condition ; do 程序段;done
for var in [words...];do 程序段;done
函数:
funcName(){}
function funcName(){}
模块化:
source [函数库路径] 原理是在当前shell内执行函数文件
总结:
通过本节的学习,学习到了shell的知识,了解了shell的简单命令