sh脚本学习之: sh脚本 、sed、awk
sh脚本
sh命令的批处理文件,支持更复杂的逻辑。 Shell中的变量
参数
$0 当前脚本路径
$1....$n 脚本执行对应的第n个参数
条件判断
文件判断
test [op] path
e存在 f是文件 d是目录 r可读 w可写 x可执行
if判断/case
if[条件判断];then ... elif[条件判断];then ... else ... fi;
case $变量 in "value") .... ;; *) ... ;;
循环
while/util
while(until) [条件成立] do ... done
for...do...done
for (( i=1;i<100;i=i+1)) do ... done for var in one two three do ... done
函数
function name(){ $1,$2,$3... }
name 1 2 3;
函数要定义在执行的命令之前
调试
sh -n script.sh 语法检查
sh -x script.sh 执行内容打印输出
sed
sed命令能够对一个文件进行逐行操作(a新增c替换d删除i插入s搜索p打印),与printf相比它的可改操作更多
awk
awk逐行分析文件,且能够分字段逻辑判断执行命令。用在标准格式的文本中提取数据特别方便。