sh_shell的基礎語法1

sh_shell的基礎語法1

創建當前目錄下建立一個a.sh,並執行,查看結果

#!/bin/sh #制定shell的類型
mkdir test #在當前的目錄中創建一個名爲test的文件
cd test #進入這個test文件夾
for ((i=0; i<10; i++)); do #通過循環創建十個普通的文本文件
    touch test_$i
done #完成循環操作
cd ../ #返回上一級目錄
chmod -R 777 test #爲test文件夾賦予最高權限

ps:

  • 本例子已在root用戶下進行
  • ‘#’ 代表註釋
  • 使用的默認的shell 爲bash

執行過程步驟

  1. vi a.sh #用vi創建一個a.sh文件
  2. 在vi中鍵入上述的代碼
  3. chmod 775 a.sh #對a.sh文件增加可執行權限
  4. ./a.sh #執行a.sh
  5. cd test
  6. ls #列出文件

result

root@iZ28nywuw2zZ:~# ./a.sh
root@iZ28nywuw2zZ:~# cd test
root@iZ28nywuw2zZ:~/test# ls 
test_0  test_1  test_2  test_3  test_4  test_5  test_6  test_7  test_8  test_9

變量的種類

  1. 局部變量
    局部變量在腳本或命令中定義,僅在當前shell實例中有效,其他shell啓動的程序不能訪問局部變量。

  2. 環境變量
    所有的程序,包括shell啓動的程序,都能訪問環境變量,有些程序需要環境變量來保證其正常運行。必要的時候shell腳本也可以定義環境變量。

  3. shell變量
    shell變量是由shell程序設置的特殊變量。

變量

定義一個變量 shell變量 test_value 並將其賦值10 再打印出來

#!/bin/sh
test_value=10
echo $test_value

result

10

使用變量

使用一個定義過的變量,只需要在其前面加$

#!/bin/sh
test_value=10
echo $test_value
echo ${test_value} #加花括號是爲了幫助解釋器識別變量的邊界
10
10

聲明只讀變量

關鍵詞 readonly

#!/bin/sh
test_value=10
readonly test_value
echo $test_value
10

刪除變量

unset test_value

特殊變量

例如查看當前shell的進程好號

echo $$
顯示進程號

各類特殊變量的用途

#!/bin/sh
echo $0 #輸出當前的sh腳本名
echo $1 #輸出傳入腳本的第一個參數
echo $2 #輸出傳入腳本的第二個參數
echo $* #輸出傳入腳本的所有參數  
echo $@ #輸出傳入腳本的所有參數
a
b
a b
a b

變量 含義
$0 當前腳本的文件名

nn 1,第二個參數是$2。

$# 傳遞給腳本或函數的參數個數。

$* 傳遞給腳本或函數的所有參數。

@("")" 1” “2"" n” 的形式輸出所有參數。

$? 上個命令的退出狀態,或函數的返回值。

$$ 當前Shell進程ID。對於 Shell 腳本,就是這些腳本所在的進程ID。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章