<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ## 定義 暫時存儲數據的地方,是一種數據標記,通過變量名可以取出對應內存空間中的數據 ## 聲明規則 * 變量名和值之間不能有空格 * 無需聲明變量類型(默認字符串) * 變量名只能包含數字、字母、下劃線 * 變量名不能以數字開頭 * 區分大小寫 >變量賦值中包含反引號(`)則表示將命令執行的結果返回給變量 ``` [henry@localhost shell]$ var1=`whoami` [henry@localhost shell]$ echo $var1 henry ``` ### 單引號和雙引號的區別 單引號變量不識別特殊語法 雙引號變量能識別特殊語法 ``` [henry@localhost shell]$ name=Henry [henry@localhost shell]$ echo1='my name is ${name}' [henry@localhost shell]$ echo2="my name is ${name}" [henry@localhost shell]$ echo $echo1 my name is ${name} [henry@localhost shell]$ echo $echo2 my name is Henry ``` ## 作用域 父子Shell中的變量無法相互訪問 環境變量在任意子進程都可以訪問 > bash和sh命令可以開啟子shell > pstree可以查看當前shell存在的域 ### Shell的調用方式不同,作用域不同 bash和sh調用會開啟對應的子shell source和./腳本名調用不會開啟對應的子shell ``` [henry@localhost shell]$ cat test.sh name=henry1 [henry@localhost shell]$ name=henry [henry@localhost shell]$ bash test.sh [henry@localhost shell]$ echo $name henry *****開啟子shell定義變量name,父shell的name變量沒變 [henry@localhost shell]$ source test.sh [henry@localhost shell]$ echo $name henry1 *****在父shell執行腳本name變量被替換 ``` ## 特殊變量 | 變量名 | 說明 | 注釋 | | --- | --- | --- | | $? | 返回上一命令執行結果狀態 | 0執行成功,大于0執行失敗 | | $0 | 獲取shell腳本的文件名以及路徑 | | | $n | 獲取腳本的第n個參數 | | | $# | 獲取腳本的參數個數 | | | $* | 獲取腳本的所有參數 | 帶“”輸出參數時所有參數整合為一個字符串 | | $@ | 獲取腳本的所有參數 | 帶“”輸出參數時每個參數分別整合為獨立字符串 | ``` [henry@localhost shell]$ cat test.sh echo "參數個數:$#" echo "腳本路徑:$0" echo "參數:$1 $2 $3" echo '$*輸出所有參數:' for var in "$*" do echo $var done echo '$@輸出所有參數:' for var in "$@" do echo $var done [henry@localhost shell]$ ./test.sh a b c 參數個數:3 腳本路徑:./test.sh 參數:a b c $*輸出所有參數: a b c $@輸出所有參數: a b c ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看