C 處理特殊字元

Oracle Enterprise Performance Management Cloud 密碼、代理伺服器密碼,以及命令參數值可能包含特殊字元。EPM Automate 需要特殊處理才能夠處理此類字元。

本節中的範例使用範例密碼來說明特殊字元的用法。

Oracle 建議您將參數和值組括在雙引號中。

Windows

必須使用特殊字元周圍的雙引號 ("),或包含特殊字元的參數值逸出這些特殊字元。

註:

無法從名稱包含 & 的資料夾中執行 EPM Automate;例如,C:\Oracle\A&B

表格 C-1 特殊字元處理:Windows

字元 描述 逸出範例
) 右括弧
  • Example")"pwd1
  • "Example)pwd1"
< 小於
  • Example"<"pwd1
  • "Example<pwd1"
> 大於
  • Example">"pwd1
  • "Example>pwd1"
& & 符號
  • Example"&"pwd1
  • "Example&pwd1"
| 豎線
  • Example"|"pwd1
  • "Example|pwd1"
" 雙引號
  • Example"""pwd1
  • "Example"pwd1"

在 Windows 批次檔案中於純文字密碼使用驚嘆號

在與 EPM Automate 搭配使用的 Windows 批次檔案中於純文字密碼使用驚嘆號 (!) 應該處理如下:

  1. 在驚嘆號之前使用兩個插入號 (^^) 以作為逸出字元。例如,如果密碼是 Welc0me!,則請將它括住為 Welc0me^^!
  2. 更新批次檔案以在檔案開頭設定 DisableDelayedExpansion,方法是包含下列宣告:

    setlocal DisableDelayedExpansion

  3. 移除指令碼中的 setlocal EnableExtensions EnableDelayedExpansion 宣告 (若存在)。

UNIX/Linux

在 UNIX 與 Linux 作業系統中,必須使用反斜線 (\) 來逸出特殊字元。

註:

  • 若要逸出 ! (驚嘆號),請使用單引號括住密碼,或使用反斜線 (\) 作為逸出字元。
  • 若要逸出 \$'",請使用雙引號括住密碼,或使用反斜線 (\) 作為逸出字元。

表格 C-2 特殊字元處理:UNIX/Linux

字元 描述 逸出範例
( 左括弧 Example\(pwd1
) 右括弧 Example\)pwd1
< 小於 Example\<pwd1
> 大於 Example\>pwd1
` 縮寫符號 Example\'pwd1
! 驚嘆號
  • 'Example!pwd1'
  • Example\!pwd1
# 井字鍵 Example\#pwd1
& & 符號 Example\&pwd1
| 豎線 Example\|pwd1
; 分號 Example\;pwd1
. 句號 Example\.pwd1
" 雙引號
  • Example\"pwd1
  • "Example\"pwd1"
' 單引號
  • Example\'pwd1
  • "Example\'pwd1"
$ 美元符號
  • Example\$pwd1
  • "Example\$pwd1"
\ 反斜線
  • Example\\pwd1
  • "Example\\pwd1"

在 UNIX 或 Linux 指令碼的純文字密碼中使用驚嘆號

在 UNIX/Linux 指令碼中,如果儲存在殼層變數中的 EPM Automate 密碼包含特殊字元,請使用三個反斜線作為逸出序列,然後用雙引號括住字串。例如,殼層變數 password 中包含的密碼 lzi[ACO(e*7Qd)jE 指令碼應撰寫如下:

password="lzi[ACO\\\(e*7Qd\\\)jE"