______________________________________________________________________________
NAME
switch - 依 據 一 個 給 定 的 值 對 多 個 腳 本 中 的 一 個 進 行 求 值
總 覽 SYNOPSIS
switch ?options? string pattern body ?pattern body ...?
switch ?options? string {pattern body ?pattern body ...?} _________________________________________________________________
描 述 DESCRIPTION
switch 命 令 依 次 針 對 每 個 pattern (模 式 )參 數 匹 配 它 的 string 參 數 。 如 果 它 發 現 一 個 pattern 匹 配 string, 則 立 即 通 過 把 跟 隨 在 (這 個 模 式 )後 面 的 body 參 數 遞 歸 的 傳 遞 給 Tcl 解 釋 器 來 求 值 它 , 並 返 回 這 次 求 值 的 結 果 。 如 果 最 後 的 pattern 參 數 是 default, 則 它 匹 配 所 有 的 東 西 。 如 果 沒 有 pattern 參 數 匹 配 string 並 且 沒 有 給 出 缺 省 , 則 switch 命 令 返 回 一 個 空 串 。 如 果 給 switch 的 最 初 的 參 數 以 - 開 始 , 則 它 們 被 作 爲 選 項 來 對 待 。 當 前 支 持 下 列 選 項 :
-exact 當 與 一 個 模 式 比 較 |
string 的 時 候 , 使 用 精 確 匹 配 。 這 是 缺 省 的 。 | ||
-glob 當 與 一 個 模 式 比 較 |
string 的 時 候 , 使 用 通 配 符 式 樣 的 匹 配 (與 |
string match 命 令 所 實 現 的 相 同 )。
-regexp 當 與 一 個 模 式 比 較 |
string 的 時 候 , 使 用 正 則 表 達 式 匹 配 (在 |
re_syntax 參 考 頁 中 描 述 )。
-- 選 項 結 束 的 標 誌 。 此 後 的 參 數 即 使 以 |
- 開 始 仍 被 作 爲 string 來 對 |
待 。 爲 pattern 和 body 參 數 提 供 了 兩 個 語 法 。 第 一 個 是 對 於 每 個 模 式 和 命 令 使 用 一 個 獨 立 的 參 數 ; 如 果 在 一 些 模 式 或 命 令 上 需 要 替 換 , 則 這 種 形 式 是 很 方 便 的 。 第 二 種 形 式 是 把 所 有 的 模 式 和 命 令 放 在 一 起 作 爲 一 個 單 一 的 參 數 ; 這 個 參 數 必 須 有 正 確 的 列 表 結 構 , 它 的 元 素 是 模 式 和 命 令 。 第 二 種 形 式 適 合 於 構 造 多 行 switch 命 令 , 因 爲 花 括 號 包 圍 着 所 有 元 素 , 所 以 沒 有 必 要 在 每 行 結 束 之 處 包 含 一 個 反 斜 槓 。 在 第 二 種 形 式 中 因 爲 pattern參 數 在 花 括 號 中 , 所 以 在 它 們 上 不 進 行 命 令 和 變 量 替 換 ; 這 使 得 第 二 種 形 式 的 行 爲 在 一 些 情 況 下 與 第 一 種 形 式 不 同 。 如 果 指 定 一 個 body 爲 ’’-’’, 則 意 味 着 給 下 一 個 模 式 的 body 也 被 用 於 這 個 模 式 (如 果 下 一 個 模 式 也 有 一 個 執 行 體 “-”則 使 用 它 後 面 的 這 個 執 行 體 , 以 此 類 推 )。 這 個 特 徵 使 在 多 個 模 式 之 間 共 享 一 個 單 一 的 body 成 爲 可 能 。 在 switch 命 令 放 置 註 釋 要 注 意 。 註 釋 只 能 放 置 在 一 個 模 式 的 執 行 體 中 , 而 不 能 與 模 式 混 合 。 下 面 是 switch 命 令 的 一 些 例 子 :
switch abc a - b {format 1}
abc {format 2} default {format 3} 將 返
回2,
switch -regexp aaab {
^a.*b$ - | ||
b {format 1} | ||
a* {format 2} | ||
default {format 3} } 將 返 回 1, 而 |
switch xyz {
a | |||
- | |||
b | |||
{ | |||
# Correct Comment Placement | |||
format 1 | |||
} | |||
a* | |||
{format 2} | |||
default | |||
{format 3} } 將 返 回 3. |
參 見 SEE ALSO
關 鍵 字 KEYWORDS
switch, match, regular expression
[中 文 版 維 護 人 ]
寒 蟬 退 士
[中 文 版 最 新 更 新 ]
2001/11/15
《 中 國 Linux 論 壇 man 手 冊 頁 翻 譯 計 劃 》 :
跋
本 頁 面 中 文 版 由 中 文 man 手 冊 頁 計 劃 提 供 。 中 文 man 手 冊 頁 計 劃 : https://github.com/man-pages-zh/manpages-zh