中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

shell怎么用

發布時間:2021-09-10 17:28:11 來源:億速云 閱讀:131 作者:小新 欄目:大數據

這篇文章主要為大家展示了“shell怎么用”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“shell怎么用”這篇文章吧。

一、shell腳本開始設定

#!/bin/bash
set -o nounset
set -o errexit

(1) set -o nounset

遇到不存在的變量,終止腳本的執行。shell腳本執行時,遇到未定義的變量,往往會繼續執行,這不符合預期,也往往會帶來莫名其妙的問題,增大排查難度。

(2) set -o errexit

執行shell腳本過程中,遇到錯誤,但往往會繼續執行,這不符合預期,加上該設置,shell腳本執行過程中遇到錯誤就會終止腳本的執行。

這兩個設定,都符合fail fast設計理念。

二、封裝函數有必要

封裝可以提高復用。

三、使用readonly和local修飾變量

readonly:顧名思義,只讀。
local:函數內變量。
不僅能提高安全性,還能避免很多讓人崩潰的莫名其妙的錯誤。

四、使用$()代替`(反單引號)

例子:

#!/bin/bash
path=`pwd`
echo $path
echo "`pwd`"
echo "$(pwd)"

$()能夠支持內嵌;
$()不用轉義;

五、使用[[]]代替[]

[[]]更符合人性編碼

避免轉義問題;
有不少新功能;
新功能包含但不限于:

|| :邏輯或
&& :邏輯與
< :字符串比較,不需要轉義處理
== :通配符(globbing)字符串比較
=~ :正則表達式(regular expression, RegEx)字符串比較

從bash4.2開始,通配符和正則表達式都不能用引號包起來,所以,通配符和正則表達式加了引號就是字面比較。

所以如果表達式里有空格,必須存儲到一個變量里,再進行通配符與正則的比較。

六、調試方法

1、echo 打印

2、使用 -n 對腳本進行語法檢查。

sh -n myshell.sh

3、使用 -v 跟蹤腳本里的每個命令的執行。

sh -v myshell.sh

4、使用 -x 跟蹤腳本里的每個命令的執行,并附加擴充信息。

sh -x myshell.sh

也可以在腳本里添加如下設定來永久指定輸出調試信息

set -o verbose 
set -o xtrace

測試完后移除。

以上是“shell怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

富裕县| 洪泽县| 灌南县| 江永县| 苗栗市| 囊谦县| 隆林| 象山县| 利川市| 东海县| 嘉兴市| 鸡泽县| 康保县| 巴里| 邮箱| 加查县| 阳江市| 苍南县| 古丈县| 特克斯县| 深圳市| 和平区| 罗江县| 大洼县| 香格里拉县| 白水县| 陵川县| 柳林县| 黑龙江省| 独山县| 北辰区| 成安县| 宜君县| 满洲里市| 唐河县| 靖宇县| 长子县| 枣庄市| 台东县| 蓬安县| 大同市|