Shell編程學習之變量
一、shell有兩種變量,有些資料也介紹有四種
1、本地變量
2、環境變量
3、導出變量
4、特定變量
二、本地變量
bash-3.2# name=test
bash-3.2# echo ${name}
test
三、清除變量
bash-3.2# unset name
bash-3.2# echo ${name}
bash-3.2#
四、環境變量
bash-3.2# echo $HOME
/root
bash-3.2# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
bash-3.2# echo $SHELL
/bin/bash
bash-3.2# echo $PS1
\s-\v\$
五、位置變量
$0,$1........$9
$0 腳本名字
$1---$9用戶輸入變量
$# 傳遞參數的個數
$*以一個字符串傳遞,但與位置變量不同,可超過9個
$$腳本運行的進程的ID號
$!後台運行的最後一個進程的進程的ID號
$@與$#相同,注意使用的時候加引號
$-顯示shell使用的當前選項,與set命令功能相同
$?顯示最後命令的狀態。0表示沒有錯誤
bash-3.2# cat test.sh
#!/bin/bash
echo "the is script name:" $0
echo "user------------->:" $1
echo "user1------------>:" $2
echo "傳遞參數個數----->:" $@
echo "腳本ID號--------->:" $$
echo "最後命令退出狀態->:" $?
bash-3.2# ./test.sh 12 45
the is script name: ./test.sh
user------------->: 12
user1------------>: 45
傳遞參數個數----->: 12 45
腳本ID號--------->: 7741
最後命令退出狀態->: 0