2007/03/14

[Linux] Bash 中文 Manual

這裡的 Bash Shell 教學蠻不錯的。

我摘下一小段:

24.2.2 程序會自動定義的變量

在執行 Shell Script 時,程序會自動產生一些變量:
變量名稱 說明
$? 表示上一個指令的離開狀況,一般指令正常離開會傳回 0。不正常離開則會傳回 1、2 等數值。
$$ 這一個 shell 的 process ID number
$! 最後一個在背景執行的程序的 process number
$- 這個參數包含了傳遞給 shell 旗標 (flag)。
$1 代表第一個參數,$2 則為第二個參數,依此類推。而 $0 為這個 shell script 的檔名。
$# 執行時,給這個 Shell Script 參數的個數
$* 包含所有輸入的參數,$@ 即代表 $1, $2,....直到所有參數結束。$* 將所有參數無間隔的連在一起,存成一個單一的參數。也就是說 $* 代表了 "$1 $2 $3..."。
$@ 包含所有輸入的參數,$@ 即代表 $1, $2,....直到所有參數結束。$@ 用將所有參數以空白為間隔,存在 $@ 中。也就是說 $@ 代表了 "$1" "$2" "$3"....。


附上一段 code 是這篇沒有提到的一個用法:

#!/bin/bash
ip_address="1.1.1.1"
T="ip_address"
echo ${!T}


就是 Bash 底下「變數的變數」用法。
是澤成同學教我的。

沒有留言:

[Windows] git-bash 底下的工具

因為工作轉到 Windows 平台上的關係,所以很多工具改到 Windows 上面運作,跟著在 TortoiseGit 底下使用 git-bash 來維護自己的專案原始碼。結果就是裝了前面提過的 auto-hotkey 使用熱鍵來提昇自己的平台操作速度; 但除了 hotkey...