Shell (六)

Shell 命令行參數(shù)

在腳本中通過(guò) $1, $2, $3, 引用參數(shù)${10} 時(shí),參數(shù)必須在大括號(hào)中。

#!/bin/bash

# Call this script with at least 10 parameters, for example
# ./scriptname 1 2 3 4 5 6 7 8 9 10
MINPARAMS=10

echo

echo "The name of this script is \"$0\"."
# Adds ./ for current directory
echo "The name of this script is \"`basename $0`\"."
# Strips out path name info (see 'basename')

echo

if [ -n "$1" ]              # Tested variable is quoted.
then
 echo "Parameter #1 is $1"  # Need quotes to escape #
fi 

if [ -n "$2" ]
then
 echo "Parameter #2 is $2"
fi 

if [ -n "$3" ]
then
 echo "Parameter #3 is $3"
fi 

# ...


if [ -n "${10}" ]  # Parameters > $9 must be enclosed in {brackets}.
then
 echo "Parameter #10 is ${10}"
fi 

echo "-----------------------------------"
echo "All the command-line parameters are: "$*""

if [ $# -lt "$MINPARAMS" ]
then
  echo
  echo "This script needs at least $MINPARAMS command-line arguments!"
fi  

echo

exit 0

腳本的返回狀態(tài)

shell 中使用exit命令來(lái)結(jié)束腳本,就像C程序一樣,也會(huì)有一個(gè)返回值來(lái)給到父進(jìn)程。

每個(gè)命令都會(huì)返回一個(gè)exit狀態(tài),如果命令執(zhí)行成功,返回0。如果返回一個(gè)非零值,通常情況下都會(huì)認(rèn)為是一個(gè)錯(cuò)誤碼。

當(dāng)一個(gè)腳本不以exit退出時(shí),就用最后一個(gè)命令的返回碼來(lái)作為腳本的狀態(tài)。

在shell中,使用$?來(lái)讀取最后一個(gè)命令的退出碼。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Shell 函數(shù) linux shell 可以用戶(hù)定義函數(shù),然后在shell腳本中可以隨便調(diào)用。shell中函數(shù)的...
    yyshang閱讀 369評(píng)論 0 0
  • linux資料總章2.1 1.0寫(xiě)的不好抱歉 但是2.0已經(jīng)改了很多 但是錯(cuò)誤還是無(wú)法避免 以后資料會(huì)慢慢更新 大...
    數(shù)據(jù)革命閱讀 12,237評(píng)論 2 33
  • 概述 首先,咱們來(lái)了解一下,什么是Shell。操作系統(tǒng)內(nèi)核給我們提供了各種接口,同時(shí)也提供了各種用戶(hù)層的庫(kù),理論上...
    keysaim閱讀 1,415評(píng)論 0 0
  • 概要本章,會(huì)對(duì)synchronized關(guān)鍵字進(jìn)行介紹。涉及到的內(nèi)容包括:1. synchronized原理2. s...
    博格體閱讀 530評(píng)論 1 12
  • 可以不用征服世界,不用出人頭地,不用功成名就,不用腰纏萬(wàn)貫,擁有你就能感覺(jué)到幸福了。 我所理解的幸福生活,...
    鏡面羅閱讀 230評(píng)論 0 0