shell編程(二)命令行參數

main函數的命令行參數

在Linux 下,我們有時需要手動的將main函數的兩個命令行參數給出,然後程序才能正常運行,如下所示:

#include<stdio.h>

int main(int args, char* argv[])
{
  if(args == 2)
  {
    printf("main have two args, first is:%s, \
    second is %s\n", argv[0], argv[1]);
  }
}

調用邏輯爲:./testarg args ,運行結果如下:
在這裏插入圖片描述

退出碼

當一個程序正常退出時,會有一個退出碼,如圖所示:
在這裏插入圖片描述

shell中,也是存在退出碼,和命令行參數的

a=123

echo "UID is $UID"
echo "PWD is $PWD"
echo "This is my first shell var a = $a"
echo "0 is $0"  #0 1 2 爲命令行參數
echo "1 is $1, 2 is $2"

echo $? #退出碼
echo "The \$? is $?"
echo "The \$* is $*"
echo "The \$# is $#"
1: UID  #表示當前用戶ID
2: PWD  #表示當前的目錄
3: $a   #表示引用變量a的值
4: $0 --- $n  #表示第0-n個命令行參數的值
5: $#   #表示命令行參數的個數
6: $?   #表示shell程序的退出碼
5: $*   #表示命令行所有的參數(不包括程序本身)
5: $@   #表示命令行所有的參數,並且用引號引起來(不包括程序本身)

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章