linux --SHELL编程

case选择语句

#!/bin/bash
read -p '请输入一个数字(1-7):' NUM
case  $NUM in
1 )
	echo "星期一"
	;;
2 ) 
	echo "星期二"
	;;
3 ) 
	echo "星期三"
	;;
4 ) 
	echo "星期四"
	;;
5 ) 
	echo "星期五"
	;;
6 ) 
	echo "星期六"
	;;
7 ) 
	echo "星期日"
	;;
* ) 
	echo "你瞎啊"
	;;
esac

for循环

for (( 初始化表达式;布尔表达式;步进表达式 )) 
	do 
		程序 
	done
#!/bin/bash
for (( i=0 ;i<=100;i++ ))
	do 
		echo "$i"
	done
#!/bin/bash
sum=0
for(( i=0;i<=100;i++))
	do 
		sum=$[$sum+$i]
	done
echo $sum

for 变量 in  值1 值2 值3
do
	程序
done
或者写成一行 
for 变量 in 值1 值2 值3 ; do 程序 ; done

#!/bin/bash
for N in $*
do 
	echo $N
done

while循环

#!/bin/bash
num=1
while [ $num -le $1 ]
do 
	echo "$num"
	#num=$[$num+1]
	let num++
	sleep 1  #睡眠1秒
done

数组

定义数组
	arr=(1 2 3 4 5 "abc");
为数组元素赋值
	arr[0]=100
	arr[1]=200
根据指定索引获取元素
${arr[索引]}
获取数组中所有元素
${arr[*]}
${arr[@]}
获取数组的长度
${#arr[*]}
${#arr[@]}

遍历数组 
for n in ${arr[*]}
do
	echo $n
done

写成一行 for n in ${arr[*]};do echo $n;done

将脚本的输入参数转成一个数组
#!/bin/bash
arr=($@)
for n in ${arr[*]}
do 
	echo $n
done

cut

cut -d 指定切割方式 -f 第几列   文件名

vi cut.txt 
001 liuyan 38 nv
002 tangyan 18 nv
003 jinlian 138 nv
004 dalang 8 nan

cut -d " " -f 1 cut.txt  按照" "来切 显示第一列
001
002
003
004

cut -d " " -f 2,3 cut.txt 按照" "来切 显示2 3列
liuyan 38
tangyan 18
jinlian 138
dalang 8

#获取到柳岩的id
cat cut.txt | grep liuyan
001 liuyan 38 nv
cat cut.txt | grep liuyan | cut -d " " -f 1
001

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/apps/jdk1.8.0_191/bin:/root/bin
选取系统PATH变量值,第2个“:”开始后的所有路径:
echo $PATH | cut -d ":" -f 2-

ifconfig ens33 | grep "inet "| cut -d "i" -f 2-|cut -d " " -f2
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值