linux-shell-特殊變量

環境變量

使用env命令能夠查看到當前工做環境下的環境變量node

[root@VM_158_86_centos vbird]# env
XDG_SESSION_ID=665714
HOSTNAME=VM_158_86_centos
NVM_CD_FLAGS=
TERM=xterm-256color
SHELL=/bin/bash
HISTSIZE=3000
SSH_TTY=/dev/pts/0
NVM_DIR=/root/.nvm
USER=root

環境變量$PATH

[root@VM_158_86_centos vbird]# echo $PATH
/root/.nvm/versions/node/v10.7.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

位置變量

$n    傳遞給腳本或函數的參數。n是一個數字,表示第幾個參數。例如,第一個參數是$1,第二個參數是$2。

預約義變量

$0    當前腳本的文件名
$#    傳遞給腳本或函數的參數個數。
$*    傳遞給腳本或函數的全部參數。
$@    傳遞給腳本或函數的全部參數。能夠看成數組用 被雙引號(" ")包含時,與 $* 稍有不一樣
$?    上個命令的退出狀態,或函數的返回值。
$$    當前Shell進程ID。對於 Shell 腳本,就是這些腳本所在的進程ID。

exec:express

#!/bin/bash
#expr表示後面的表達式爲一個數學運算
#Let expressions 執行一個或多個表達式。表達式中的變量前沒必要有$.若是表達式中包含>了空格或其餘特殊字符,則必須引發來。
let sum=$1+$2
#運算符+號先後必須加空格
sum_expr=`expr $1 + $2`
echo $sum
echo $sum_expr

echo "fileName:$0"
echo "this Shell PID:$$"
echo "first parameters:$1"
echo "second parameters:$2"
echo "all parameters:$*"
echo "all parameters array:$@"
echo "parameters numbers:$#"
echo "the previous command exec status:$?"

result:centos

[root@VM_158_86_centos vbird]# sh special_var.sh 1 2
3
3
fileName:special_var.sh
this Shell PID:4057
first parameters:1
second parameters:2
all parameters:1 2
all parameters array:1 2
parameters numbers:2
the previous command exec result:0
相關文章
相關標籤/搜索