亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

詳解shell語法檢查模式

2019-11-11 04:58:34
字體:
來源:轉載
供稿:網友

啟用 verbose 調試模式

在進入本指導的重點之前,讓我們簡要地探索下 verbose 模式。它可以用 -v 調試選項來啟用,它會告訴 shell 在讀取時顯示每行。要展示這個如何工作,下面是一個示例腳本來批量將 PNG 圖片轉換成 JPG 格式。

將下面內容輸入(或者復制粘貼)到一個文件中。

#!/bin/bash#convertfor image in *.png; doconvert "$image" "${image%.png}.jpg"echo "image $image converted to ${image%.png}.jpg"doneexit 0

接著保存文件,并用下面的命令使腳本可執行:

$ chmod +x script.sh

我們可以執行腳本并顯示它被 Shell 讀取到的每一行:

$ bash -v script.sh

顯示shell腳本中的所有行                                                                 

在 Shell 腳本中啟用語法檢查調試模式使用 -n 激活語法檢查模式

它會讓 shell 讀取所有的命令,但是不會執行它們,它(shell)只會檢查語法。一旦 shell 腳本中發現有錯誤,shell 會在終端中輸出錯誤,不然就不會顯示任何東西。

激活語法檢查的命令如下:

$ bash -n script.sh

因為腳本中的語法是正確的,上面的命令不會顯示任何東西。所以,讓我們嘗試刪除結束 for 循環的 done 來看下是否會顯示錯誤:

下面是修改過的含有 bug 的批量將 png 圖片轉換成 jpg 格式的腳本。

#!/bin/bash#script with a bug#convertfor image in *.png; doconvert  "$image"  "${image%.png}.jpg"echo "image $image converted to ${image%.png}.jpg"exit 0

保存文件,接著運行該腳本并執行語法檢查:

$ bash -n script.sh

檢查 shell 腳本語法                                                                       

從上面的輸出中,我們看到我們的腳本中有一個錯誤,for 循環缺少了一個結束的 done 關鍵字。shell 腳本從頭到尾檢查文件,一旦沒有找到它(done),shell 會打印出一個語法錯誤:

script.sh: line 11: syntax error: unexpected end of file

我們可以同時結合 verbose 模式和語法檢查模式:

$ bash -vn script.sh

在腳本中同時啟用 verbose 檢查和語法檢查                                                             

我們還可以通過修改腳本的首行來啟用腳本檢查

如下面的例子:

#!/bin/bash -n#altering the first line of a script to enable syntax checking#convertfor image in *.png; doconvert  "$image"  "${image%.png}.jpg"echo "image $image converted to ${image%.png}.jpg"exit 0

如上所示,保存文件并在運行中檢查語法:

$ ./script.shscript.sh: line 12: syntax error: unexpected end of file

此外,我們可以用內置的 set 命令來在腳本中啟用調試模式。

下面的例子中,我們只檢查腳本中的 for 循環語法。

#!/bin/bash#using set shell built-in command to enable debugging#convert#enable debuggingset -nfor image in *.png; doconvert  "$image"  "${image%.png}.jpg"echo "image $image converted to ${image%.png}.jpg"#disable debuggingset +nexit 0

再一次保存并執行腳本:

$ ./script.sh

總的來說,我們應該保證在執行 Shell 腳本之前先檢查腳本語法以捕捉錯誤。

本文

免費提供最新linux技術教程書籍,為開源技術愛好者努力做得更多更好:http://www.linuxPRobe.com/


上一篇:注解TXT

下一篇:算法--遞歸與分治策略

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日本高清不卡在线| 亚洲国产又黄又爽女人高潮的| 亚洲新中文字幕| 国产精品久久久久7777婷婷| 中文字幕精品www乱入免费视频| 国产精品久久久久久久久久小说| 91在线观看免费高清| 美女精品久久久| 色悠悠久久久久| 国产视频久久久久| 国模精品视频一区二区三区| 午夜欧美不卡精品aaaaa| 国产精品∨欧美精品v日韩精品| 国内外成人免费激情在线视频| 欧美精品在线看| 久久久久久91| 亚洲第一精品夜夜躁人人躁| 午夜精品一区二区三区在线视| 国产精品ⅴa在线观看h| 久久久久久亚洲精品中文字幕| 精品久久久久久中文字幕大豆网| 亚洲视频在线免费看| 国产精品免费一区| 欧美成人网在线| 97国产真实伦对白精彩视频8| 中文字幕国产亚洲2019| 成人国产精品日本在线| 久久久久国产精品一区| 亚洲欧洲一区二区三区久久| 欧美国产中文字幕| 亚洲天堂第二页| 亚洲成人激情在线| 成人欧美一区二区三区在线| 亚洲mm色国产网站| 亚洲欧美日韩区| 欧美精品videossex性护士| 精品欧美aⅴ在线网站| 色av中文字幕一区| 亚洲免费电影在线观看| 国产精品丝袜久久久久久不卡| 精品国产一区二区三区久久久狼| 庆余年2免费日韩剧观看大牛| 国产精品久久久久91| 久久成人精品电影| 欧美日韩福利在线观看| 亚洲a∨日韩av高清在线观看| 久久久久久亚洲精品中文字幕| 欧美一级视频在线观看| 久久久久久久国产精品| 亚洲自拍偷拍视频| 国产午夜精品理论片a级探花| 青青久久av北条麻妃海外网| 亚洲性av网站| 欧美午夜视频在线观看| 美日韩精品免费视频| 亚洲欧美日韩天堂| 在线电影欧美日韩一区二区私密| 欧美激情国内偷拍| 精品久久久国产| 欧美成年人视频网站| 久久99久国产精品黄毛片入口| 亚洲美女又黄又爽在线观看| 亚洲欧美999| 亚洲精品综合精品自拍| 国产一区二区三区在线观看网站| 国产精品pans私拍| 亚洲免费高清视频| 国产精品女主播视频| 精品国内自产拍在线观看| 庆余年2免费日韩剧观看大牛| 日韩电影网在线| 日韩不卡在线观看| 不卡av在线网站| 日韩中文字幕国产精品| 亚洲综合色av| 久久精品成人欧美大片古装| 日韩av电影中文字幕| 国产成人一区三区| 亚洲天堂成人在线| 中文一区二区视频| 色婷婷成人综合| 视频在线观看99| 96精品久久久久中文字幕| 亚洲欧美日韩图片| 亚洲激情视频在线观看| 欧美电影电视剧在线观看| 久久影院模特热| 午夜精品国产精品大乳美女| 日韩有码片在线观看| 欧美日韩中文字幕在线| 中文字幕九色91在线| 亚洲日本成人女熟在线观看| 欧美大码xxxx| 北条麻妃一区二区在线观看| 精品亚洲一区二区三区在线观看| 亚洲成人免费在线视频| 最近免费中文字幕视频2019| 久久久久久成人| 91麻豆桃色免费看| 69国产精品成人在线播放| 精品中文字幕在线观看| 欧美亚洲国产另类| 国产成人精品视频在线| 亚洲91av视频| 尤物九九久久国产精品的分类| 国产999精品视频| 97在线观看免费| 日韩欧美成人区| 亚洲白拍色综合图区| 91久久精品日日躁夜夜躁国产| 中日韩午夜理伦电影免费| 国产精品久久久久一区二区| 国产一区视频在线播放| 日韩高清电影免费观看完整版| 国产精品成人v| 国产精品久久久久久久久久| 97视频com| 91精品国产色综合| 98午夜经典影视| 国产精品美女久久久免费| 国产精品久久久一区| 亚洲精品美女网站| 日韩免费在线视频| 91色在线视频| 成人欧美一区二区三区在线| 成人激情免费在线| 一区二区三区国产在线观看| 97精品国产97久久久久久免费| 8050国产精品久久久久久| 尤物精品国产第一福利三区| 国内精品400部情侣激情| 欧美在线视频网站| 欧美精品一二区| 国内精品美女av在线播放| 91精品啪在线观看麻豆免费| 中文字幕av一区中文字幕天堂| 国产精品久久久久久久av大片| 久久精品免费播放| 97免费视频在线播放| 性夜试看影院91社区| 国产精品私拍pans大尺度在线| 国产成人精品午夜| 精品国产一区二区三区久久| 久久精品电影网| 欧美激情国产日韩精品一区18| 日韩天堂在线视频| 欧美性猛交xxxx乱大交| 久久综合伊人77777蜜臀| 国产精品电影久久久久电影网| 国产成人+综合亚洲+天堂| 国产精品偷伦免费视频观看的| 日韩有码在线播放| 精品国产一区二区三区久久| 欧美专区在线播放| 亚洲色图校园春色| 国产97在线视频| 国产成人精品视频在线| 精品中文字幕视频| 欧美激情亚洲综合一区| 日韩毛片在线看| 亚洲欧美制服第一页| 国产欧美亚洲精品| 国产精品久久久久久av| 亚洲福利在线播放|