shell中有很多自動複製的變數
常用的位置引數和特殊變數有
$0 相當於c語言main函式的argv[0]$1 $2 $3....位置引數,相當於argv[1],argv[2],argv[3]
$# 相當於argv -1
$@ 表示引數列表(可以用做for的遍歷)
$* 表示引數列表
$? 上一條命令的exit status(0為真 非0為假)
$$ 當前程序號
shift 會使引數列表右移一位
#! /bin/sh
echo "the program $0 is now running"
echo "the first parameter is $1"
echo "the second parameter is $2"
echo "the parameter list is $@"
echo "the parameter list is $*"
shift
echo "the first paraneter is $1"
echo "the second paranter is $2"
echo "the parameter list is $@"
echo "the parameter list is $*"
[root@localhost ~]# . test.sh 11 22 33 44
the program -bash is now running
the first parameter is 11
the second parameter is 22
the parameter list is 11 22 33 44
the parameter list is 11 22 33 44
the first paraneter is 22
the second paranter is 33
the parameter list is 22 33 44
the parameter list is 22 33 44
shell語法(位置引數和特殊變數)
位置引數 0相當c的main函式argv 0 1 2 位置引數,相當於argv 1 argv 2 相當於 argc 1 表示引數列表 上一條命令的退出碼 當前shell的程序號 bin bash echo 0 0 echo 1 1 echo 2 2 echo 3 3 echo echo echo e...
shell 位置引數變數
n 0代表命令本身 1 9 代表第乙個到第九個引數 第十個引數 eg bin bash num1 1 num2 2 sum 1 2 echo sum 命令執行中的所有引數 乙個整體 執行中所有引數 單個引數 執行中的引數個數 bin bash for i in do 所有引數當成乙個整體迴圈一次 1...
關於Shell中的位置引數變數
位置引數是一種在呼叫shell程式的命令列中按照各自的位置決定的變數,是在程式名之後輸入的引數,它們分別標識了使用者輸入的整個命令列中以空格分隔開的字串,其中,1標識第乙個位置的引數,2標識第二個,以此類推。其中,0是乙個特殊的變數,它的內容是當前這個shell程式的檔名,所以,它不是乙個位置引數,...