㈠ shell腳本的執行都有哪些方法,有何不同
你好!
運行一個Bash腳本的3中方式:
1.為腳本文件加上可執行的許可權:
chmod
+x
script_file
2.運行/bin/bash
命令並且把腳本文件名作為它的參數
3.可在shell腳本中的開頭加上一句:#!/bin/bash,然後在腳本所在目錄
./shellfile
看自己的需求,沒什麼本質的區別。
希望對你有所幫助,望採納。
㈡ 如何調試Linux shell腳本
方法一:
sh
-x
script.sh-x選項會將運行到的腳本內容顯示在屏幕上,前面有個+號。這樣就知道哪句被執行到了。對調試很有幫助。
方法二:在腳本中使用debug開關適用於只調試部分腳本的情況。
set
-x
搜索……(要調試的代碼段)
set
+x
然後sh
script.sh運行腳本
方法三:
在腳本中添加列印比如搞個log輸出函數,專門用於列印調試相關信息。
_log(){
if
[
「$_DEBUG」
=
「true」
];
then
echo
「調試信息」
fi
}只要在外面控制$_DEBUG開關即可。
㈢ 如何在 Linux 中啟用 Shell 腳本的調試模式
【方式一】: 通過echo方式
功能: 最簡單的調試方法,可以在任何懷疑出錯的地方用echo列印變數
場合: 所有懷疑可能有問題的地方
示例: echo $VAR
【方式二】: 通過選項方式
-n
功能: 讀取shell腳本,但不實際執行
場合: 用於測試Shell腳本中是否存在語法錯誤
詳細查看http://blog.csdn.net/jerry_1126/article/details/52096886
http://www.linuxprobe.com/chapter-04.html
加入《Linux就該這么學》一起交流
㈣ 如何在 Shell 腳本中執行語法檢查調試模式
使用bash -x 腳本文件名
例如:腳本文件whi.sh
#!/bin/bash
COUNTER=0
while[$COUNTER-lt3];do
echoThecounteris$COUNTER
COUNTER=`echo$COUNTER+1|bc`
done
正常調用和調試模式對比:
㈤ 如何在vim中調試shell腳本
這個可能沒法做到,shell腳本的作用是把一些需要用戶執行的命令結合起來自動運行
但是vim是編輯文件的命令,既然你需要編輯文件,那為什麼還需要shell執行呢
㈥ 如何調試Shell腳本
1) 檢查語法錯誤: 一般來說我們可以通過修改shell腳本的源代碼,令其輸出相關的調試信息來定位錯誤,那有沒有不修改源代碼來調試shell腳本的方法呢?答案就是使用shell的執行選,下面是一些常用選項的用法: -n 只讀取shell腳本,但不實際執行 -x 進入跟蹤方式,顯示所執行的每一條命令 -c "string" 從strings中讀取命令「-n」可用於測試shell腳本是否存在語法錯誤,但不會實際執行命令。在shell腳本編寫完成之後,實際執行之前,首先使用「-n」選項來測試腳本是否存在語法錯誤是一個很好的習慣。因為某些shell腳本在執行時會對系統環境產生影響,比如生成或移動文件等,如果在實際執行才發現語法錯誤,您不得不手工做一些系統環境的恢復工作才能繼續測試這個腳本。「-c」選項使shell解釋器從一個字元串中而不是從一個文件中讀取並執行shell命令。當需要臨時測試一小段腳本的執行結果時,可以使用這個選項,如下所示: sh -c 'a=1;b=2;let c=$a+$b;echo "c=$c"'"-x"選項可用來跟蹤腳本的執行,是調試shell腳本的強有力工具。「-x」選項使shell在執行腳本的過程中把它實際執行的每一個命令行顯示出來,並且在行首顯示一個"+"號。 "+"號後面顯示的是經過了變數替換之後的命令行的內容,有助於分析實際執行的是什麼命令。 「-x」選項使用起來簡單方便,可以輕松對付大多數的shell調試任務,應把其當作首選的調試手段。2) 調試工具-bashdb 使用shell調試器bashdb,這是一個類似於GDB的調試工具,可以完成對shell腳本的斷點設置,單步執行,變數觀察等許多功能。使用bashdb進行debug的常用命令 1.列出代碼和查詢代碼類: l 列出當前行以下的10行 - 列出正在執行的代碼行的前面10行 . 回到正在執行的代碼行 w 列出正在執行的代碼行前後的代碼 /pat/ 向後搜索pat ?pat?向前搜索pat2.Debug控制類:h 幫助help 命令 得到命令的具體信息 q 退出bashdb x 算數表達式 計算算數表達式的值,並顯示出來 !!空格Shell命令 參數 執行shell命令 使用bashdb進行debug的常用命令(cont.) 控制腳本執行類: n 執行下一條語句,遇到函數,不進入函數裡面執行,將函數當作黑盒 s n 單步執行n次,遇到函數進入函數裡面 b 行號n 在行號n處設置斷點 del 行號n 撤銷行號n處的斷點
㈦ shell 腳本怎麼調 shell
最簡單的調試命令當然是使用echo命令。您可以使用echo在任何懷疑出錯的地方列印任何變數值。這也是絕大多數的shell程序員要花費80%的時間來調試程序的原因。Shell程序的好處在於不需要重新編譯,插入一個echo命令也不需要多少時間
shell也有一個真實的調試模式。如果在腳本"strangescript" 中有錯誤,您可以這樣來進行調試:
sh -x
strangescript
這將執行該腳本並顯示所有變數的值。
shell還有一個不需要執行腳本只是檢查語法的模式。可以這樣使用:
sh -n your_script
這將返回所有語法錯誤。
linux/unix shell l腳本調試方法
Shell提供了一些用於調試腳本的選項,如下所示:
-n
讀一遍腳本中的命令但不執行,用於檢查腳本中的語法錯誤
-v
一邊執行腳本,一邊將執行過的腳本命令列印到標准錯誤輸出
-x
提供跟蹤執行信息,將執行的每一條命令和結果依次列印出來
使用這些選項有三種方法,一是在命令行提供參數
$ sh -x ./script.sh二是在腳本開頭提供參數
#! /bin/sh -x第三種方法是在腳本中用set命令啟用或禁用參數
#! /bin/sh
if [ -z "$1" ]; then
set -x
echo "ERROR: Insufficient
Args."
exit 1
set +x
㈧ Shell腳本應該怎麼使用
1、用滑鼠對shell腳本點右鍵-》屬性-》許可權,顯示下圖
2、將「允許以程序執行文件」的選項打勾
3、即可在終端中執行腳本
㈨ 如何運行shell腳本
編寫好的shell腳本(如:test),可以採取兩種方式進行運行:
一、 $ sh test
一般不採用這種調用方式,尤其不採用「sh<test」的調用方式,因為這種方式將禁止shell讀取標准輸入。
也可以採用 $ ksh test
這種方式要求shell具有「可讀」的訪問許可權。
二、直接運行可執行的shell腳本之前,首先應使用下列chmod命令,把shell腳本文件設置為可執行的文件。
chmod 755 test(除文件屬主可寫之外,每個用戶均具有讀和可執行的訪問許可權)
chmod +rx test(同上)
chmod u+rx test(只有文件屬主具有讀和執行的訪問許可權)
按照上述要求設置shell腳本文件的訪問許可權後,可採用下列方式,直接運行shell腳本了。
1、test(如果命令檢索路徑包含當前目錄)
2、./test(如果命令減縮路徑不包含當前目錄)
*說明: sh test 方式調用一個shell叫蹦可能會禁止某些shell特定的擴展功能,因而可能引起腳本無法正確執行。