标签:shell case xxx code 数组 name 条件判断 util action
shell就是操作系统的外层。
Hello World:
#!/bin/bash
echo 'Hello World'
!/bin/shell 这是shell的头,必须指定;
编辑完成之后要赋予可执行的权限。
chmod o+x XXX.sh
然后执行./XXX.sh或者/bin/bash XXX.sh或者sh XXX.sh就可以运行这个文件了
定义变量与引用变量
#!/bin/bash
#这是局部变量的定义
B=wang
A=123
echo "$A-$B"
SHELL创建的环境变量:
$0--------当前程序名称
$n--------当前程序的第n个参数,$0输出当前程序名称,$1输出后面的参数
$*--------当前程序的所有参数(不包括程序本身)
$#-------当前程序的参数个数(不包括程序本身)
$?--------命令或程序执行完后的状态,一般返回0表示执行成功
$UID---------当前用户ID,0代表root
$PWD--------当前所在目录
$UID表示转义
echo "\$UID IS $UID"
if条件判断
#!/bin/bash
NUM1 = 1
NUM2 = 2
if(($NUM1 > $num2));then
echo "123"
else
echo "321"
fi
逻辑运算符:
-f 判断文件是否存在。 eg: if [ -f filename]
-d 判断目录是否存在。 eg:if [ -d dir]
-a 相当于and
-o 相当于or
-z 空字符串
mkdir -p 递归创建目录
多条件判断
#!/bin/bash
A=1
B=2
if(($A > $B));then
echo "123"
exit
elif(($A == $B));then
echo "321"
else
echo "123"
fi
for循环
for 变量 in 字符串
do
语句1
done
#!/bin/bash
for i in `seq 1 15`
do
echo "num is $i"
done
计算和
#!/bin/bash
j=0
for ((i=1;i<=100;i++))
do
j=`expir $i + $j`
done
echo $j
查看脚本执行过程:sh -x XXX.sh | more
while循环
while [[$i < 10]];do
echo $i;
((i++));
done
扩展:
read -p "please input num: " input
回车然后输入123
echo $input
这个时候就会输出123
逐行读取一个文件(/etc/hosts)
#!/bin/bash
while read line
do
echo $line
done </etc/hosts
util循环语句
util 条件
do
? action
done
直到满足条件才退出,否则一直执行action
case选择语句
case $arg in
? pattern1)
? 语句1
? ;;
? pattern2)
? 语句2
? ;;
*)
语句3
;;
esac
select选择语句
select一般用于选择菜单的创建,可以配合PS3来做菜单的打印输出信息
select i in "Centos" "redhat" "ubuntu" ;do echo "Select you use system:" $i ;done
回车会打印
1)Centos
2)redhat
3)ubuntu
输入1回车会打印Select you use system:Centos
定义数组
A = {test1 test2 test3}
echo ${A[0]},输出test1
echo ${A[@]},输出所有参数
echo ${#A[@]},显示数组个数
echo ${A[@]/test2/test5},替换test2为test5
unset A[2],移除test3
函数
function command{
? 命令
}
如何调用函数:只要command即可
sed命令
我们用vi来修改文件内容时,假设将文件内的12批量替换成51
需要输入:%s/12/51/g
我们用sed命令:
sed ‘s/12/51/g’ xxx.txt
此时如果不加任何参数,sed不会应用修改,只是缓存起来了。
sed -i ‘s/12/51/g’ xxx.txt
就会应用修改。
在行首添加一个空格:
sed ‘s/^/&需要在行首添加的字符/g‘ xxx.txt
标签:shell case xxx code 数组 name 条件判断 util action
原文地址:https://www.cnblogs.com/mwss/p/12500073.html