freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

shell腳本編程ppt課件-資料下載頁

2025-01-12 09:27本頁面
  

【正文】 | grep – q $user 。 then echo $1 user is logged on. exit 0 else echo $1 user is not logged on. exit 1 fi fi ③判斷用戶是否已經(jīng)在系統(tǒng)中登錄 65 ? 說明: ( 1)由于 who | grep $user不是表達(dá)式而是命令組合,所以不需要 test語句測試;如果命令組合執(zhí)行成功,即找到指定的用戶名則返回碼為 0;否則為非 0。 ( 2)在這個程序中使用了 grep字符串搜索命令和“ |” 管道命令 ( 3)用 grep 命令 – q選項(xiàng)來禁止顯示搜索到的信息。 ( 4)還使用了 exit命令,以終止 shell程序的執(zhí)行。 exit 0表示程序終止后返回 0值,而 exit 1表示程序終止后返回非 0的值。 66 ④簡單的菜單功能 ? ! /bin/sh clear echo MENU echo echo files modified in last 24 hours echo free disk space echo consumed by this user echo echo echo n Select: read choice case $choice in 1)find $HOME mtime 1 print。 2)df。 3)du s $HOME。 4)exit。 *)echo Invalid option esac 67 ? 說明: ( 1)本程序菜單的第一項(xiàng)是顯示 /home目錄下,最近 24小時內(nèi)所有修改過的文件。命令中的 1參數(shù)是數(shù)字“ 1” ,表示一天( 24小時)。第二項(xiàng)是檢查磁盤空間。第三項(xiàng)是顯示 /home目錄下文件的大小,命令中的 s選項(xiàng)是為了僅顯示總計(jì)。第四項(xiàng)是退出程序。 ( 2)為了使程序美觀,用 echo – n實(shí)現(xiàn)輸入的選擇數(shù)字不換行。 ( 3)輸入的數(shù)字不在 14范圍內(nèi)時,顯示無效的選項(xiàng)信息。 68 ? ! /bin/sh for file in *.txt do leftname=`basename $file .txt` mv $file $ done ? 說明: ( 1)在 Linux系統(tǒng)中不支持 mv *.txt *.doc這樣的更名命令形式,如果需要將文件成批地更名最好編寫一個 shell腳本文件。 ( 2)在 for語句的參數(shù)列表中使用了“ *”通配符。 ( 3(在程序中用到 basename命令,該命令從隨后的文件名剝?nèi)ブ付ǖ暮缶Y。 ⑤將當(dāng)前目錄下所有的 .txt文件更名 69 ? ! /bin/sh – if test $ ne 1 then echo “Usage: chuser username” else user=”$1” until who |grep “$user”/dev/null do sleep 300 done echo “$user has logged on!” fi ? 說明: ( 1)如果沒有從命令行輸入用戶名,則測試 $ ne 1為“真”,顯示用法提示信息。 ( 2)程序中 until語句的 expression(循環(huán)條件)是 who|grep “$user”命令執(zhí)行的返回碼,如果沒有找到指定的用戶名,返回碼為非 0(為“假”),則用 sleep命令暫停執(zhí)行程序 5分鐘;找到后返回碼為 0(為“真”),則終止循環(huán)并顯示該用戶已經(jīng)登錄的信息。 ( 3)采用重定向到 /dev/null空文件的目的是不顯示查找到的用戶其他信息。 ⑥每隔 5分鐘檢查指定的用戶是否登錄系統(tǒng) 70 實(shí)驗(yàn) 關(guān)鍵代碼提示 1)checkuser ? a=`cut d: f1 /etc/passwd | grep c “^$1$”` ? if [ $a gt 0 ] 2)printnumber ? 判斷參數(shù)是否是數(shù) a=$(echo $1|bc 2/dev/dull) if [[ $a != $1 ]] $1參數(shù)不是數(shù) ?bc計(jì)算器,進(jìn)制轉(zhuǎn)換命令 可自學(xué): 4個 linux篩選數(shù)據(jù)常用工具 cut, grep, awk, sed 71 截取小數(shù)點(diǎn)前后的子串 ?${變量名 匹配模式 } 截掉匹配子串后剩余字符串是結(jié)果 ?str1=${a%%.*} ?str2=${a*.} ? 從左向右, %從右向左 ? 搜索最長匹配符號寫兩次,最短匹配寫 1次 ? $ MYVAR= $ echo ${MYVAR*fo} $ echo ${MYVAR*fo} ? $ MYFOO= $ echo ${MYFOO%%.*} chickensoup $ echo ${MYFOO%.*} ?指定字符偏移和長度截出子串 $ EXCLAIM=cowabunga $ echo ${EXCLAIM:0:3} cow 從第一個字符開始 ,截 3個字符 $ echo ${EXCLAIM:3:7} abunga 從第四個字符開始 ,截 7個字符 。熟練 vi編輯器,熟悉腳本語法。 73 更多練習(xí) 1. 練習(xí) vi編輯器的使用并熟練掌握它。 2. 簡要說明 shell的功能,常用的 shell有哪些? 3. 查看系統(tǒng) PATH環(huán)境變量,了解可執(zhí)行文件的路徑信息 4. 如何實(shí)現(xiàn)用系統(tǒng)當(dāng)前日期和時間作為第一級提示符? 5. 如何實(shí)現(xiàn)用 alias命令將 cp命令設(shè)置別名為 copy? 6. 簡要說明 shell程序的結(jié)構(gòu)。 7. 簡要說明運(yùn)行 shell腳本程序的幾種方法。 8. 如果你希望編寫的腳本程序在任何一個目錄下都能直接執(zhí)行(輸入程序名后回車),則應(yīng)該如何處理? 74 1. 變量的賦值方式有幾種?各用在哪些場合? 2. 寫出幾個與命令行參數(shù)有關(guān)的變量并簡要說明如何在腳本中引用。 3. 以下 shell腳本文件存在什么錯誤? echo what month is this? read $month echo $ month is as good a month as any. 4. 編寫一個 shell程序,它輸出一個 1到 10之間的平方和立方對照表。 5. 編寫一個名為 reverse的 shell程序,將輸入的若干個命令行參數(shù)以逆序輸出。 ? 用其它循環(huán)語句編程實(shí)現(xiàn)本題的功能。 75 1. 編寫一個 shell腳本程序,它能根據(jù)輸入的命令行參數(shù)采取不同的動作:如果是目錄,則列出該目錄中的文件;如果是可執(zhí)行的文件,則用 shell執(zhí)行之;如果是可讀的文件,則分屏顯示其內(nèi)容。 2. 編寫一個求平方和求立方的函數(shù),在 shell程序中調(diào)用它實(shí)現(xiàn)第十四題的功能。 3. 編寫一個彈出式菜單的 shell程序并實(shí)現(xiàn)其簡單的菜單功能: ************************************************ * MENU * * * * * * * ************************************************ 即用戶按下數(shù)字 1,則提示用戶輸入源和目的文件名后執(zhí)行復(fù)制;輸入數(shù)字 2,則提示用戶輸入要更名的文件或目錄名后執(zhí)行更名操作;輸入數(shù)字 3和 4分別執(zhí)行刪除和查找操作;輸入數(shù)字5,則退出該菜單 shell程序的執(zhí)行。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1