桌上管理系統提供從指令行執行動作的 dtaction 指令。您可以使用 dtaction,執行來自下列的動作:
程序檔
其它動作
終端機模擬器指令行
dtaction [-user user_name] [-execHost 主機名稱] \ action_name [argument [argument]...]
-user user_name-提供以不同使用者來執行動作的能力。如果 dtaction 是由 user_name 以外的使用者所呼叫,會有密碼的提示符號顯示出來。
-execHost 主機名稱-僅適用於 COMMAND 動作而已;指定將在其上執行指令的主機。
argument-動作的引數;通常是檔案引數。
dtaction 用戶端有其它的指令行選項。有關更多的資訊,請參閱 dtaction(1) 線上援助頁。
使用動作的 EXEC_STRING 中的 dtaction。
例如,以下動作使用名為 Spell(拼字)(在「應用程式管理者」中標為``檢查拼字''的動作)的內建動作。新動作會執行「文字編輯程式」與 Spell(拼字)動作,在不同的終端機模擬器視窗中顯示拼字錯誤。
ACTION EditAndSpell { WINDOW_TYPE NO_STDIO EXEC_STRING /bin/sh -c 'dtaction Spell \ %Arg_1"File:"%; dtpad %Arg_1%' }
使用以下 EXEC_STRING 中的語法:
EXEC_STRING dtaction -user user_name action_name [ file_argument]
新的使用者(user_name)必須經由下列機制之一,以到系統的顯示器存取權:
登入使用者的 .Xauthority 檔案上的讀取許可權
或,xhost 許可權
例如,下列兩個動作提供成為 root 與編輯 app-defaults 檔案的能力。
ACTION AppDefaults { WINDOW_TYPE NO_STDIO EXEC_STRING /usr/dt/bin/dtaction -user root \ EditAppDefaults %Arg_1"File:"% } ACTION EditAppDefaults { WINDOW_TYPE TERMINAL EXEC_STRING /bin/sh -c 'chmod +w %Arg_1%; \ vi %Arg_1%; chmod -w %Arg_1%' }