shell学习三十--综合应用

for循环打印下面这句话中的字母数不大于6的单词
I am oldboy teacher welcome to wolf training class.
[root@node01 day13]# vi arr01.sh 
arr=(I am oldboy teacher welcome to wolf training class.)
for wolf in ${arr[@]}
do
   if [ ${#wolf} -le 6 ]
   then
   echo $wolf
   fi
done
[root@node01 day13]# sh arr01.sh 
I
am
oldboy
to
wolf
class.

[root@node01 day13]# vi arr02.sh 
#!/bin/sh
arr=(I am oldboy teacher welcome to wolf training class.)
for((i=0;i<${#arr[*]};i++))
do
    if [ ${#arr[$i]} -le 6 ]
    then
        echo ${arr[$i]}
    fi
done
[root@node01 day13]# sh arr02.sh 
I
am
oldboy
to
wolf
class.

[root@node01 day13]# vi for.sh 
#!/bin/sh
char="(I am oldboy teacher welcome to wolf training class.)"
for n in $char
do
   if [ ${#n} -le 6 ]
   then 
   echo $n
   fi
done
[root@node01 day13]# sh for.sh 
(I
am
oldboy
to
wolf

#!/bin/sh
for i in I am oldboy teacher welcome to wolf training class.
do
   [  ${#i} -le 6 ] && echo $i
done
[root@node01 day13]# sh for01.sh 
I
am
oldboy
to
wolf
class.
[root@node01 day13]# vi awk.sh
#!/bin/sh
echo "I am oldboy teacher welcome to wolf training class."|awk '{for(i=1;i<=NF;i++) if(length($i)<=6)print $i}'
[root@node01 day13]# sh awk.sh 
I
am
oldboy
to
wolf
class.
[root@node01 day13]#vi wc.sh
#!/bin/sh
for i in I am oldboy teacher welcome to wolf training class.
do
   [ `echo $i|wc -L` -le 6 ] && echo $i
done

------------------------------------------
a、for
b、对字符串长度进行判断
c、wc -L
d、变量子串${#wolf}
e、expr length 
f、awk
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值