用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:
解析:把這段話保存在一個文本中,把文本名作為變量賦值給變量$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的单词的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深入理解 Tomcat(八)源码剖析之连
- 下一篇: 【Eclipse】将控制台输出直接保存到