欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

用shell打印下面这句话中字母数小于6的单词

发布时间:2024/4/14 编程问答 48 豆豆
生活随笔 收集整理的这篇文章主要介绍了 用shell打印下面这句话中字母数小于6的单词 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Bash also interprets a number of multi-character options


答案:

#! /bin/bash for i in bash also interprets a number of multi-character options don=`echo "$i" | wc -m`if (($n<6))thenecho $ifi done

解析:思路是使用for循环将这句话的每个词的字数统计出来,然后再使用if判断将小于6的词打印

        

         使用for循环将这段话中每个单词依次循环赋值给变量$i,首先,第一次循环将第一个词赋值给$i,然后输出$i,并使用管道符|将输出结果给后面的wc -m命令(这个命令作用是统计字符数),将统计结果赋值给变量$n,``反引号的作用就是将命令的执行结果反馈。

         使用if判断,判断变量$n是否小于6,如果$n小于6,则输出$i,否则不作执行。到这里第一次循环结束。

        

         最后执行第二次循环,第三次循环。。。。依次执行


答案2:

#!/bin/bash ##将需要统计的字母放在一个文本中 ##将文本作为变量输入 read -p "please input a filename:" p ##统计字符数 n=`cat $p |wc -w` for i in `seq 1 $n` do ##截取字符nn=`cat $p |cut -d " " -f$i` ##计算截取的字符mm=`echo $nn |wc -m` ##判断 if [ $mm -lt 6   ]thenecho $nnfi done

解析:把这段话保存在一个文本中,把文本名作为变量赋值给变量$p,然后使用wc -w统计词数,统计的结果赋值给变量$n

        

          使用for循环,将1-$n依次赋值给$i,这里“seq 1 $n”,就是1,2,3....$n。

          第一次循环,使用cut截取字符串,cut -d “ ”-f$i的意思就是,以空格为分隔符,截取$i段,第一次循环,就是$i=1,也就是第一段

          将截取第一段的结果赋值给变量$nn,使用wc -m 命令统计字符数,将结果赋值给变量$mm.

          使用if判断,判断变量$mm,也就是第一个词的字符数是否小于6,-lt是小于的意思,如果小于6,则输出这个词$nn,否则不执行。

          第一次循环结束。

          依次执行第二次循环,第三次循环。。。。第$i次循环

转载于:https://blog.51cto.com/12129628/2061060

超强干货来袭 云风专访:近40年码龄,通宵达旦的技术人生

总结

以上是生活随笔为你收集整理的用shell打印下面这句话中字母数小于6的单词的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。