shell程式設計 二

2021-10-03 23:21:51 字數 1307 閱讀 3767

在shell程式中,資料用變數來儲存,使用變數時不需要宣告,預設所有變數型別為字串型別.

這裡$*,"$@"和$@的效果是一樣的.

使用set設定位置引數.

形如

set

$(ls -l)

這樣的命令則會把ls -l的結果以此作為他的引數.

環境變數

說明$home

當前使用者主目錄

$path

用以搜尋命令的目錄列表,用:分隔

$ps1

命令提示符,通常是用$.root使用者則是#

$ps2

二級提示符,用來提示後需輸入,通常是>

$ifs

內部與分隔符

在shell中,使用一般變數可以不用宣告,可對於一些特殊變數需要宣告.

宣告格式:

declare

[options]

[name=

[value]

]typeset [options]

[name=

[value]

]#unset用於刪除shell變數

unset name

常用選項options:

-a 宣告乙個陣列array

-f 宣告乙個函式function

-i 宣告乙個整數integer

-r 宣告唯讀變數readonly

-x 宣告全域性變數,可供子程序使用

注:賦值語句中,等號前後不能有空格.

整型變數不可以被賦非整型的值

set用於檢視本地定義的shell變數

echo $

當變數(name)存在時,顯示變數的值,否則顯示string

echo $

當變數(name)存在時,顯示變數的值,否則把string賦給name,並輸出

echo $

當變數(name)存在時,顯示變數的值,否則顯示name:string

echo $

當變數(name)存在時,顯示變數的值,否則顯示空

j@ubuntu:~/pro_shell$ x=

'$path'

j@ubuntu:~/pro_shell$ echo

$x$path

shell程式設計《二》

一 if語句 if expressino then code block elif expression then code block else code block fi fi 比較整 數a 和b是否 相等 if a b 也 可 用 eq 判斷整 數a是否 大於整數 b if a gt b 比較...

shell程式設計二

同makefile一樣,符號 被用作注釋,也就說shell在解析該指令碼時會忽略這一行,但是 例外。如果需要將多個命令一起執行,可以將這些命令放在同一行,使用分號分割即可,例如 bin bash date whodate命令首先被執行,然後是who命令。通常我們需要顯示一些資訊,可以使用echo命令...

shell程式設計 (二)

雜亂模組 上一次的結果碼 對指令碼進行檢測語法錯誤 bash n shell.sh 指令碼 bash x shell.sh 指令碼,單步執行 date s 顯示當前秒數 timedays 提前退出指令碼 exit stat 獲取檔案屬性 一 shell中實現算術運算 a 2 b 5 1 let a ...