Shell总结
程序员文章站
2022-06-11 19:31:14
...
Shell
Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
变量定义
`` 执行符:执行 `command`中的指令
'' 单引号:取消'string'中的特殊字符,如$
"" 双引号:"xxx xxx"表示一个字符串
命名只能使用英文字母[a-zA-Z],数字[0-9]和下划线[_],首个字符不能以数字[0-9]开头
中间不能有空格[ ],可以使用下划线(_)
不能使用标点符号
不能使用bash里的关键字(可用help命令查看保留关键字)
定义如下:(=号不能有空格)
aa10_=10
参数处理
$* 返回所有的参数,如果"$*" 返回的信息 "param1 param2 param3 ..."
[email protected] 返回所有的参数,如果"[email protected]" 返回的信息 "param1" "param2" "param3"
$? 返回上一个命令结果,0或者1 0表示执行成功 1表示执行失败
字符串处理
aa10_a='aaaaabaaa'
打印字符串的长度
echo '${#aa10_a}'
打印字符串的子串
echo '${aa10_a:1:4}
数组
array_name=(
'abcd'
'abcd'
'abdd'
)
array_name[4]='bbbd'
读取数组
${数组名[下标]}
所有数组
${数组名[@]}
注释
# aa
# bb
数值相加
num1=1
num2=2
num3=`expr $num1 + $num2`
操作符
算术运算
+ - * / != == =(赋值)
关系运算 great equal less
-gt > -ge >=
-lt < -le <=
-eq = -ne !=
布尔运算 or all not
-o 或 -a 与 ! 非
字符串运行操作
= 字符串相等
!= 字符串不相等
-z 字符长度为0 zero
-n 字符长度不能0 not zero
$ 检测字符串是否为空,不为空返回 true
文件判断
-e exists
-d directory
-w write 可写
-r read 可读
-x x 可执行
-s size 文件是否为空
逻辑运算
格式
[ condition ]
if [ 9 -lt 10 ]
then
fi
for var in array_param
do
done
while [ condition ]
do
done
case var in
1)#模式
command;
command;
;;
2)#模式
command;
command:
;;
esac
函数
函数定义
[function] func_name()
{
action;
[return int;]
}
函数调用
func_name param
重定向
0:标准输入
1:标准输出
2:标准错误输出
> 输出
< 输入
>> 追加
2>&1 标准输出与错误输出
command << delimiter
document
delimiter
如
wc -l << EOF
aaa
bbb
ccc
EOF
不想输出到屏幕
command >> /dev/null
交互输入
while read line
do
echo ${line}
done
上一篇: Steam退款还不到账怎么办?Steam退款问题详解
下一篇: 我是不是白雪公主里的公主啊