歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> Unix基礎知識 >> Bash Shell的參數符號意義

Bash Shell的參數符號意義

日期:2017/3/3 15:23:22   编辑:Unix基礎知識

Bash Shell 中會用到一些參數,

$1,$2,... 特定第幾個參數, $0 表示當前執行的進程名,script 本身的名字,或者在正則表達式中表示整行輸出

$# 命令行或者是位置參數的個數

$* 所有的位置參數,被作為一個單詞.

$@ 與$*同義,但是每個參數都是一個獨立的""引用字串,這就意味著參數被完整地傳遞

$- 傳遞給腳本的falg

$! 在後台運行的最後的工作的PID(進程ID).

$_ 保存之前執行的命令的最後一個參數.

$? 函數或者腳本本身的退出狀態,用於檢查上一個命令,函數或者腳本執行是否正確。(0表示該命令正確執行,任何非0值表示命令出錯。)

$$ 腳本自身的進程ID.
使用舉例:
執行語句運行結果:

[root@myhost tmp]# ./filelist.sh file1.txt file2.txt file3.txt
general file list files: 3
General by: ./filelist.sh
Last command: Last PID:
Is normal: 0
Current PID: 26418

filelist.txt:

[root@myhost tmp]# cat filelist.txt
Param1: file1.txt
Param2: file2.txt
All param: file1.txt file2.txt file3.txt
All param: file1.txt file2.txt file3.txt
Flag: hB
Last PID:

filelist.sh

[root@myhost tmp]# cat filelist.sh
#!/bin/bash
    
echo "general file list files: $#"
    
echo "General by: $0"
    
echo "Param1: $1" > filelist.txt
echo "Param2: $2" >> filelist.txt
    
echo "All param: $*" >> filelist.txt
echo "All param: $@" >> filelist.txt
    
echo "Flag: $-" >> filelist.txt
echo "Last PID: $!" >> filelist.txt
    
echo "Last command: $_"
echo "Is normal: $?"
echo "Current PID: $$"

本文出自 “小何貝貝的技術空間” 博客,請務必保留此出處http://babyhe.blog.51cto.com/1104064/322297

查看本欄目更多精彩內容:http://www.bianceng.cn/OS/unix/

Copyright © Linux教程網 All Rights Reserved