Shell腳本調(diào)試?-n?-v?-x?-c的具體用法
1. 簡述
Shell腳本的語法調(diào)試,使用bash的相關(guān)參數(shù)進(jìn)行調(diào)試
sh [參數(shù)] 文件名.sh
1.1 -n
不要執(zhí)行script,僅查詢語法
“-n” 可用于測試shell腳本是否存在語法錯(cuò)誤,但不會(huì)實(shí)際執(zhí)行命令。
常用于寫完腳本之后,測試一下腳本是否能用從而避免直接使用帶來的可能出現(xiàn)的問題
[root@Centos-root473791 ~]# sh -n whileD.sh [root@Centos-root473791 ~]#
1.2 -v
在執(zhí)行script之前,先將script的內(nèi)容輸出到屏幕上
在腳本執(zhí)行完之前將腳本內(nèi)容打印出來
[root@Centos-root473791 ~]# sh -v whileD.sh? #! /bin/bash s=0 i=1 while [ $i -le 100 ] do ? ? ? ? s=$[$s+$i] ? ? ? ? i=$[$i+1] done echo $s 5050 [root@Centos-root473791 ~]#?
1.3 -x
將使用的腳本的內(nèi)容輸出到屏幕,該參數(shù)經(jīng)常被使用
跟蹤腳本執(zhí)行,并顯示出來
“-x"選項(xiàng)可用來跟蹤腳本的執(zhí)行,是調(diào)試shell腳本的強(qiáng)有力工具。”-x"選項(xiàng)使shell在執(zhí)行腳本的過程中把它實(shí)際執(zhí)行的每一個(gè)命令行顯示出來,并且在行首顯示一個(gè)"+"號(hào)。 "+"號(hào)后面顯示的是經(jīng)過了變量替換之后的命令行的內(nèi)容,有助于分析實(shí)際執(zhí)行的是什么命令。 "-x"選項(xiàng)使用起來簡單方便,可以輕松對(duì)付大多數(shù)的shell調(diào)試任務(wù),應(yīng)把其當(dāng)作首選的調(diào)試手段。
- 前面有“+”號(hào)的行是shell腳本實(shí)際執(zhí)行的命令,
- 前面有“++”號(hào)的行是執(zhí)行trap機(jī)制中指定的命令,
- 其它的行則是輸出信息。
[root@Centos-root473791 ~]# cat whileD.sh? #! /bin/bash s=0 i=1 while [ $i -le 100 ] do ? ? ? ? s=$[$s+$i] ? ? ? ? i=$[$i+1] done echo $s echo "執(zhí)行完成" [root@Centos-root473791 ~]# sh -x whileD.sh? + s=0 + '[' 100 -le 100 ']' + s=5050 + i=101 + '[' 101 -le 100 ']' + echo 5050 5050 + echo $'\346\211\247\350\241\214\345\256\214\346\210\220' 執(zhí)行完成 [root@Centos-root473791 ~]#?
1.4 -c
-c “string” 從strings中讀取命令
執(zhí)行后面跟著的字符串包裹的命令集合
sh -c 'a=1;b=2;let c=$a+$b;echo "c=$c"'
到此這篇關(guān)于Shell腳本調(diào)試 -n -v -x -c的具體用法的文章就介紹到這了,更多相關(guān)Shell -n -v -x -c內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
linux?中sed命令實(shí)現(xiàn)刪除文件的任意列(操作代碼)
這篇文章主要介紹了linux中sed命令實(shí)現(xiàn)刪除文件的任意列,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06Shell腳本實(shí)現(xiàn)啟動(dòng)PHP內(nèi)置FastCGI Server
這篇文章主要介紹了Shell腳本實(shí)現(xiàn)啟動(dòng)PHP內(nèi)置FastCGI Server,本文講解了一些需求過程,并給出了實(shí)現(xiàn)需求的shell腳本,需要的朋友可以參考下2015-04-04Shell腳本實(shí)現(xiàn)獲取網(wǎng)頁快照并生成縮略圖
這篇文章主要介紹了Shell腳本實(shí)現(xiàn)獲取網(wǎng)頁快照并生成縮略圖,本文獲取網(wǎng)頁快照使用phantomjs、生成縮略圖使用ImageMagick,需要的朋友可以參考下2015-02-02shell腳本實(shí)現(xiàn)輸入密碼顯示星號(hào)
本文給大家分享使用shell腳本實(shí)現(xiàn)輸入密碼顯示星號(hào)的腳本寫法,在文章末尾給大家補(bǔ)充了shell輸入密碼時(shí)關(guān)閉屏幕回顯的實(shí)現(xiàn)方法,需要的朋友參考下吧2017-01-01Linux下使用tcpdump抓包的實(shí)現(xiàn)方法
tcpdump是Linux下面的一個(gè)開源的抓包工具,和Windows下面的wireshark抓包工具一樣, 支持抓取指定網(wǎng)口、指定目的地址、指定源地址、指定端口、指定協(xié)議的數(shù)據(jù)。這篇文章主要介紹了Linux下使用tcpdump抓包的實(shí)現(xiàn)方法,需要的朋友可以參考下2015-10-10使用ntpdate工具校正linux服務(wù)器時(shí)間(實(shí)現(xiàn)方法)
下面小編就為大家?guī)硪黄褂胣tpdate工具校正linux服務(wù)器時(shí)間(實(shí)現(xiàn)方法)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-06-06學(xué)習(xí)Linux網(wǎng)絡(luò)編程基本函數(shù)
這篇文章主要介紹了學(xué)習(xí)Linux網(wǎng)絡(luò)編程,網(wǎng)絡(luò)編程的一些基本函數(shù):也是實(shí)現(xiàn)tcp協(xié)議通訊的基本步驟,實(shí)現(xiàn)代碼在最后,IP需要修改為自己的IP,即可通信2021-08-08