日韩性视频-久久久蜜桃-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)容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 欧美专区第二页 | 国产一区日韩一区 | 操碰视频 | 在线看片亚洲 | 一区二区不卡av | 日韩视频在线观看一区二区 | 无码一区二区三区在线观看 | 国产精品久久久av | 欧美亚洲一区二区三区四区 | 在线视频午夜 | 中国精品毛片 | 亚洲30p| 四虎影城库 | 免费黄网在线观看 | 公交上高潮的丁芷晴 | 欧美一区二区三区爽爽爽 | 天天操天天看 | 91成人福利在线 | 国产午夜无码视频在线观看 | 久久久精品日本 | 艹久久| 中文字幕在线播放av | 免费在线一区二区三区 | 69sex久久精品国产麻豆 | 欧美丰满少妇人妻精品 | wwwxx日本| 人妖被c到高潮欧美gay | 午夜福利电影 | av久久久久久| 免费精品视频在线 | 狠狠综合网 | 北岛玲av | 性xxxx18 | 亚洲天堂免费av | 久草福利资源在线观看 | 91在线第一页| 久久精品国产亚洲AV成人雅虎 | 亚洲综合自拍偷拍 | 精品亚洲乱码一区二区 | 国产粉嫩白浆 | 风间由美一区二区三区 | 日本少妇久久久 | 日本 片 成人 在线 九色麻豆 | 午夜福利视频一区二区 | 欧美人与性动交a欧美精品 日韩免费高清视频 | 精品无码一区二区三区免费 | 成人涩涩软件 | 人妻体内射精一区二区三区 | 国产成人精品毛片 | 国产精品自拍偷拍视频 | cao我| 玩弄白嫩少妇xxxxx性 | 日本免费电影一区二区三区 | 午夜激情在线播放 | 宇都宫紫苑在线播放 | 亚洲午夜精品视频 | 亚洲福利一区二区三区 | 中文字幕亚洲一区二区三区 | 在线亚洲+欧美+日本专区 | 久久精品中文闷骚内射 | 久精品视频| 综合国产在线 | 国产原创在线 | 日本三级在线视频 | 欧美老女人bb | 日本大尺度电影免费观看全集中文版 | 一区二区三区91 | 国产精品亚洲综合 | 国产欧美精品国产国产专区 | 亚洲深爱 | 西欧free性满足hd老熟妇 | 97成人在线观看 | 成人午夜在线观看视频 | 欧美日韩国产成人在线 | 日韩欧美小视频 | 手机在线看片日韩 | 国产高潮又爽又无遮挡又免费 | 瑟瑟视频免费观看 | 91视频一区 | 亚洲精品亚洲人成人网 | 综合色婷婷 | 欧美福利在线观看 | 中文字幕一区二区三 | 污污网站免费在线观看 | 精品国产av色一区二区深夜久久 | 欧美两根一起进3p做受视频 | 国产视频日本 | 青草青草视频 | 中文字幕理伦片免费看 | 国产人妖一区二区 | 国产视频xxxx| 西西久久 | 欧美成人做爰猛烈床戏 | 日韩午夜在线播放 | 亚洲最新av网站 | 五十路妻 | 亚洲av中文无码乱人伦在线观看 | 91精品国产色综合久久不卡98 | 超碰超碰|