shell腳本首行
#!/bin/bash
這里/bin/bash只是一個例子,shell腳本首行一般以#!開頭,后面跟的解釋器即為執(zhí)行此腳本的解釋器,除了首行,跟在#后面的字符會被認(rèn)為是注釋-
shell腳本的執(zhí)行方式與區(qū)別
- shell腳本執(zhí)行時,會向系統(tǒng)內(nèi)核請求啟動一個全新的進(jìn)程,讀取用戶環(huán)境變量,在該進(jìn)程中執(zhí)行腳本中的命令
- bash script-name
當(dāng)腳本沒有可執(zhí)行權(quán)限時,使用此命令也可執(zhí)行,新建子進(jìn)程,在子進(jìn)程中運行scriptname - path/script-name
在當(dāng)前目錄下執(zhí)行腳本,要求腳本必須有可執(zhí)行權(quán)限,該方式也是在子進(jìn)程中執(zhí)行shell腳本 - source 或 . script-name
在當(dāng)前目錄下執(zhí)行腳本,該方式會在當(dāng)前shell環(huán)境中執(zhí)行指令 - sh script-name 或 cat script-name | bash
-
shell配置文件
shell配置文件有/etc/profile,/etc/bashrc,~/bashrc, ~/bash_profile,/etc/profile.d/*
加載順序如下
-
shell腳本調(diào)試技巧
- 使用echo命令輸出中間結(jié)果
打印中間結(jié)果是調(diào)試程序的基本需求,任何可以看到中間結(jié)果的方法都有助于調(diào)試程序 - 使用sh命令行參數(shù)調(diào)試程序
- sh -n查詢該腳本語法是否有問題
- sh -v執(zhí)行腳本時,先將命令輸出至屏幕,在標(biāo)準(zhǔn)輸出中可以看到命令,如果有錯誤,會給出相應(yīng)提示
- sh -x在標(biāo)準(zhǔn)輸出中,給出執(zhí)行的命令和該命令的輸出
- 使用set命令縮小調(diào)試范圍
- set -x開始
- set +x結(jié)束
- 使用echo命令輸出中間結(jié)果
shell腳本執(zhí)行方式與調(diào)試技巧
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 1.創(chuàng)建文件夾 !/bin/sh mkdir -m 777 "%%1" 2.創(chuàng)建文件 !/bin/sh touch...
- Shell color參考資料:一所國外大學(xué)的cs系幫助頁console_codes(man console_co...
- 執(zhí)行方式很簡單,第一種是絕對路徑直接執(zhí)行,第二種是bash 加上腳本文件名稱。 在寫bash腳本的時候,第一行固定...
- Ubuntu的發(fā)音 Ubuntu,源于非洲祖魯人和科薩人的語言,發(fā)作 oo-boon-too 的音。了解發(fā)音是有意...
