日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

交互输入与for语句

發(fā)布時間:2025/5/22 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 交互输入与for语句 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

交互輸入與for語句

1.?? 交互輸入

read命令可以同時定義多個變量值;輸入的內(nèi)容默認(rèn)以空格為分隔符,將值輸入到對應(yīng)的變量中;read盡量避免交互

如果默認(rèn)值過多,最后所有的值會被賦予給最有一個變量;

如果默認(rèn)值過少,多于變量則為空值

實例:

????????? read a b c

aa bb cc

read如何輸入:

????????? read “請輸入一個目錄:” abc

????????? echo ?-n “請輸入一個目錄:”--------?? -n取消換行符? ;(分號)后面加read命令進(jìn)行變量輸值

????????? echo ?-n “請輸入一個目錄:” ; read abc ---------原本的寫法

常用參數(shù):

????????? -p? read -p “請輸入一個目錄:” 變量

????????? -t? 定義超時時間 ??最好不要寫在-p的后面 ?

read? -t 5 -p “請輸入一個目錄:” 變量

???????? 腳本默認(rèn)值

????????????????????????? [ -n $filename ] 判斷沒有為真 輸入值

????????????????????????? 輸入內(nèi)容------------------------------------------------------------------

????????????????????????? |?????????????????????????????????????????????????????????????????????????????????????????????????????? |

????????????????????????? 輸入是否正確--------------?????????????????????????????????????????????????????????? 沒有輸入--------------

????????????????????????? |????????????????????????????????????????? |?????????????????????????????????????????????????????????? |???????????????????????????????? |

????????????????????????? 正確 ???????????????????????????? 不正確,給提示???????????????????? 提示輸入 ??給出默認(rèn)值

read可以同時定義多個

?

ls -d abc 只顯示abc

2.?? for循環(huán)

回顧:文件判斷腳本

???????? #!/bin/bash

???????? read -p “輸入一個文件名:” name

???????? if [ -z $name ];then

????????????????? echo “Usage:輸入一個文件名,/etc/fstab”

????????????????? exit 1

???????? fi

???????? if [ -e $name ];then

????????????????? echo “提示:輸入的文件不存在”

????????????????? exit 2

???????? elif [ -f $name ];then

????????????????? echo? “這個文件是普通文件”

???????? elif [ -d $name ];then

????????????????? echo? “這個文件是目錄文件”

???????? elif [ -b $name ];then

????????????????? echo? “這個文件是塊文件”

???????? elif [ -L $name ];then

????????????????? echo “這個文件是鏈接文件”

???????? else

????????????????? echo?? “這個文件是其他文件”

???????? fi

修改成case語句

case語句的語法格式

???????? case 變量 in

???????? PATTERN1)

?????????????????????????????????? 代碼塊1

?????????????????????????????????? ;;

???????? PATTERN2)

代碼塊2

?????????????????????????????????? ;;

???????? *)

?????????????????????????????????? 代碼庫

???????? esac

?

for語句的應(yīng)用場景:

????????????????? 有一個功能,這個功能需要循環(huán)執(zhí)行,只是執(zhí)行對象不同;【對象必須是同類數(shù)據(jù)】

For語句的格式:

???????? a = [‘a(chǎn)’,’b’,’c’]-------在python中,我們很多情況下,需要調(diào)用相應(yīng)的方法去生成列表

???????? for 變量 in 列表;do

????????????????????????? 循環(huán)體

???????? done

練習(xí):九九乘法表

???????? {1..9}

?

?

for i in {1..9};do

???????? for j in {1..9};do

????????????????? echo -e -n “$j*$i=$[$i*$j]\t”

???????? done

???????? echo “ ”

done

???????? echo -e 可以識別特殊字符

?

?

-e 使echo命令,能夠識別特殊字符

\r 回車不換行

\n 換行符

\t 制表符

md5sum---hash加密

?

列表的生成方式:

1、? 直接給出字符串列表

For I in a b c d e;do

????????? 循環(huán)體

done

2、? 整數(shù)列表

?

A {start..end} //{1..1}是不行的 {1..100}==python range(1,100)

B seq 命令引用 $(seq [start [step] end]) 步長 python range{1,00,2}

???????? ?Seq 20 30

練習(xí)1:ping掃描

#!/bin/bash

#

declare -i sum=0

for i in ${seq 1 254};do

???????? ping -c 1 -w 1 10.6.12.$i &> /dev/null

???????? if [ $? -eq 0 ];then

let sum++

echo “10.6.12.$i 是通的”

????????????????? else

????????????????????????? echo “10.6.12.$i 是不通的”

????????????????? fi

done

echo “共有$sum臺電腦在線”

練習(xí)2:1到100的偶數(shù)和

???????? #!/bin/bash

???????? #

???????? delcare -i sum=0

???????? for i in ${seq 0 2 100 } ;do

????????????????? let sum+=$i

done

echo “$sum”

3、? 返回列表的命令

$(command)

????????? 應(yīng)用場景:ls /var/log

????????? ls /var/log | grep “*.log$”

#!/bin/bash

#

??????????????? declare -i sum=0

??????????????? for i in /var/log/*.log;do

#?????????????????????? echo $i

??????????????????????? if [[ $i == *.log ]];then

??????????????????????????????? echo $i

??????????????????????????????? let sum++

??????????????????????? fi

??????????????? done

??????????????? echo $sum

練習(xí)3:netstat -tan 查看網(wǎng)絡(luò)狀態(tài),統(tǒng)計LISTEN出現(xiàn)的次數(shù)、ESTABLISHED出現(xiàn)的狀態(tài)

#!/bin/bash

#

declare -i sum1=0

declare -i sum2=0

declare -i sum3=0

for i in $(netstat -tan | grep "^tcp"|? awk '{print $6}');do

??????? if [ $i="LISTEN" ];then

??????????????? let sum1++

??????? elif [ $i="ESTABLISHED" ];then

??????????????? let sum2++

??????? else

??????????????? let sum3++

??????? fi

done

echo "監(jiān)聽的鏈接有:$sum1"

echo "建立的鏈接有:$sum2"

echo "其他的有:$sum3"

?

常見的vim命令用法:

????????? dd 剪切 ?5dd---剪切五次

????????? p?????? 粘貼

????????? yy 復(fù)制 ?5yy—復(fù)制五次

????????? p

4、? glob機制---文件名通配符的機制

$(ls /var/log)

/var/log/*.log

???????? Test命令總結(jié):

(1)????? test的命令的option的-a,-o只在命令中使用

du命令 -h??? du -h filename

例如 [ `du -h? $file |cut -d: -f1` -lt 100K -a -x $file ]

注意:做字符串匹配的時候,不支持正則以及通配符

(2)????? test test == [[? ]]

再連接兩個test的命令的時候,不能使用命令內(nèi)部的option -a -o

一般使用 || && == != >= <=

[[ yum.log ==*.log ]]

5、? 變量引用—傳參

$@ $* 將參數(shù)作為for循環(huán)的列表

$0—和awk不一樣

???????? bash中$0代表其運行的腳本文件

???????? awk中$0代表整行的內(nèi)容???????????????????? ----awk是按行執(zhí)行

需要多個詞的時候”$@”,需要一個詞的時候用”$*”

?

IFS-------是分隔符

keepalived –主備 需求:每一個小時去匹配一下主備設(shè)備的keepalived的配置文件是否相同

????????????????? 安全:1.加密 2.校驗 3.原認(rèn)證 4.證書認(rèn)證(不可否性)

  • 校驗:hash
  • 擴展:for語句的另外一種寫法

    基于C語言格式的for語句的寫法:

    ????????? for 變量 in列表;do

    ?????????????????? 循環(huán)體

    ????????? Done

    ?????????

    ????????? for((i=0;i<=10;i++));do

    ?????????????????? 循環(huán)體

    ????????? Done

    ????????? for((初始條件語句;條件判斷語句;初始值變化語句));do

    ?????????????????? 循環(huán)體

    ????????? done

    99乘法表:

    ????????? for((i=1;i<=9;i++));do

    ?????????????????? for((j=1;j<=$i;j++));do

    ??????????????????????????? echo -n -e “$i*$j=$(($i*$j))\t”

    ?????????????????? done

    ?????????????????? echo “ ”

    ????????? done

    優(yōu)點:不宜進(jìn)入死循環(huán)

    While語句的格式:

    定義初始值----i=0

    while 條件;do

    ????????? 循環(huán)體

    ????????? Let i++ //注意 初始值的變化

    done

    轉(zhuǎn)載于:https://www.cnblogs.com/KAJIA1/p/11392337.html

    總結(jié)

    以上是生活随笔為你收集整理的交互输入与for语句的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 91桃色免费视频 | 四虎黄色影视 | 99久久婷婷国产综合精品 | 久久久久久久亚洲av无码 | 污污视频在线播放 | 亚a在线| 娇妻被肉到高潮流白浆 | 人妻中文字幕一区二区三区 | 精品无码av一区二区三区不卡 | av免费观看网址 | v99av| 日本人妻丰满熟妇久久久久久 | av片在线看| 日日操狠狠干 | 久久手机看片 | 天狂传说之巴啦啦小魔仙 | 免费看黄av| 欧美天堂 | 欧美精品日韩在线观看 | jizz欧洲 | 日韩精品一区二区三区国语自制 | 精品视频免费 | 在线免费观看国产视频 | 美女扒开粉嫩的尿囗给男生桶 | 亚欧洲精品在线视频 | 日韩精品免费在线视频 | 在线观看黄网站 | 婷婷综合另类小说色区 | 超碰国产一区二区三区 | 亚洲色偷精品一区二区三区 | 韩日精品在线观看 | 男人把女人捅爽 | 欧美 亚洲 一区 | 国产精品国产三级国产专播精品人 | 中文字幕99页 | 色女人网站 | 久久密av| 国产精品国产三级国产专区52 | 人妻互换一区二区三区四区五区 | 黄色网免费观看 | 九色在线 | 九色论坛| 视频一区在线免费观看 | 国产精品无码一区二区三区三 | 丁香av | 亚洲欧洲一区二区三区 | 成人在线免费视频播放 | 性色欲网站人妻丰满中文久久不卡 | 国产精品v日韩精品v在线观看 | 亚洲网站在线观看 | 污污视频在线观看网站 | 91高跟黑色丝袜呻吟动态图 | 亚洲欧美激情精品一区二区 | 大香蕉精品一区 | 精品久久久久久久久久岛国gif | 国产女人高潮的av毛片 | 欧美精品一区二区三区蜜臀 | 婷婷亚洲一区 | 亚洲性生活片 | 国产精品无码永久免费不卡 | a√天堂资源 | 欧美第一页 | 国产精品久久婷婷六月丁香 | 日本妈妈3| 精品一区二区三区中文字幕 | 亚洲午夜精品久久久久久app | 69精品无码成人久久久久久 | 99久久久国产精品无码性 | 国产精品自拍偷拍视频 | 日本中文字幕影院 | 欲求不满的岳中文字幕 | 91一区视频| 国产清纯在线 | 欧美国产在线视频 | 91无限观看 | 99国产精品国产免费观看 | 黄色片链接 | 日韩视频在线一区 | 色综合久久中文字幕无码 | 免费看欧美一级特黄a大片 国产免费的av | 日韩av毛片 | 久久夜夜夜 | 日韩精品中文字幕在线观看 | 青青青青在线 | 亚洲福利网址 | 在线看片亚洲 | 男男做性免费视频网 | 国产精品久久久久久一区二区三区 | 亚洲天堂激情 | 露脸丨91丨九色露脸 | 国产精品色呦呦 | 久久精品视频偷拍 | 丝袜脚交免费网站xx | 性做久久久久久久 | 国内成人在线 | 久久97视频 | 免费在线a| 青青草娱乐视频 | 亚洲一区视频在线 |