Shell 脚本编程之基础
最近闲着无聊,把笔记写在这吧
0x00 特殊符号和常见的运算符
<1>特殊符号
$*:命令行所有参数组成的字符串
$@:命令行所有参数组成的字符串
$n:n位数字,$0表示命令名称,$1表示命令行第一个参数,以此类推
$?:上一个命令的返回值,如果正常退出则返回0,反之为非0值
$$:当前进程的进程号PID
$!:后台运行的最后一个进程的进程号
$#:位置参数的数量
<2>算术运算符
+,-,*,/,%
<3>比较运算符
-eq:等于比较
-ne:不等于比较
-lt:小于比较
-gt:大于比较
-le:小于等于比较
-ge:大于等于比较
<3>逻辑运算符
-a:逻辑与
-o:逻辑或
!:逻辑非
<4>字符串比较符
-z:测试字符串
-n:测试字符串是否为非零
= :等于一个字符串
!=:不等于某个字符串
0x01 常见环境变量
HOME:当前用户的主目录
PATH:命令搜索路径
PWD:用户的当前目录
UID:当前用户标识符
LOGNAME:用户登录名
TERM:终端的类别
0x02 shell脚本编程常用运算命令
let命令:只能进行整数间的比较
expr命令
test命令
bc命令
0x03 shell脚本之选择结构
if语句格式:
单if分支语句
if experssion
then
fi
多if分支语句
if expression
then
statement
esle
statement
fi
if语句嵌套
if expression
then
if expression
then
statement
else
statement
fi
else
statement
fi
case 语句格式:
case expression in
mode1)
statement
;;
mode2)
statement
;;
......
moden)
statement n
;;
esac
0x04 shell脚本编程之循环
while循环语句格式
while [expression]
do
statement
done
or
while((expression))
do
statement
done
for循环语句格式
<1>shell风格for格式
for variable in list
do
statement
done
<2>c语言风格for格式
for((expr1; expr2; expr3))
do
statement
done
先写这么多吧,想到在写