指令 動作的最小需求為兩個欄位 -動作 與 EXEC_STRING。
ACTION action_name { EXEC_STRING execution_string }
執行字串是 指令 動作定義最重要的部分。它會使用與您將會在終端機視窗中所執行的指令行類似的語法,但還包括處理檔案與字串引數的其它語法。
執行字串可包括:
檔案與非檔案引數
Shell 語法
絕對路徑或可執行的名稱
引數是指令或應用程式要正確執行所需要的資訊。例如,試想您可以用以開啟「文字編輯器」中的檔案之指令行:
dtpad 檔案名稱
在此指令中,檔案名稱 是 dtpad指令的檔案引數。
就像應用程式與指令,動作可以有引數。指令 動作可以使用的資料有兩種類型:
檔案
字串資料
執行字串是直接執行的,而不是經由 shell。但是,您可以在執行字串中明確地調用 shell。
例如:
EXEC_STRING \ /bin/sh -c \ 'tar -tvf% (File)Arg_1% 2>&1 | \${PAGER:-more};\ echo "\\n*** 從視窗功能表選擇關閉 以關閉 ***"'
如果您的應用程式是位於路徑變數中列出的目錄中,您可以使用簡單的可執行名稱。如果應用程式是在它處,您必須使用絕對路徑於可執行的檔案。
使用您將會用以從指令行啟動應用程式的 EXEC_STRING 的相同語法。
為檔案引數使用此語法:
%Arg_n%
或
%(File)Arg_n%
既然供應至 Arg_n 的引數假定(按內定)為檔案,(檔案) 是選擇性的。(有 關 "解譯檔案引數為字串"(字串)Arg_%n 語法的使用,請見 %。)
此語法讓使用者在動作圖像上定位資料檔案物件,以啟動具有該檔案引數的動作。其在指令 行中代替 nth 引數。檔案可以是區域或遠程檔案。
此範例顯示只與目錄引數運作的動作的部分定義。當目錄定位於動作圖像上時,動作在具有 讀取及寫入的許可權的目錄中顯示所有檔案的列表。
動作 List_Writable_Files { ARG_TYPE FOLDER EXEC_STRING /bin/sh -c 's -l%Arg _1% | grep rw-' ... }
為檔案引數使用此語法:
%(File)"提示符號"%
當使用者連按兩下動作圖像時,此語法建立顯示檔案名稱的提示符號的動作。
例如,此執行字串顯示提示 wc -w 指令的檔案引數的對話框:
EXEC_STRING wc -w%(File)"在檔案中計數字數:"%
為檔案引數使用此語法:
%Arg_n"提示符號"%
或
%(File)Arg_n"提示符號"%
此語法製造如下動作:
接受定位檔案為檔案引數。
當使用者連按兩下動作圖像時,顯示提示檔案名稱的對話框。
例如,此執行字串在定位檔案上執行 lp -oraw。如果動作是由連按兩下圖像所啟動的,會出現對話框以提示檔案名稱。
EXEC_STRING lp -oraw %Arg _1"列印的檔案:"%
為非檔案參數使用此語法:
%"提示符號"%
或
%(String)"提示符號"%
既然按內定解譯引號的文字為字串資料,(字串) 是選擇性的。此語法顯示提示非檔案資料的對話框;當提示檔案名稱時,請勿使用此語法。
例如,此執行字串執行 xwd 指令與要增加至每個像素的值的提示符號:
EXEC_STRING xwd -add% "增加值:"% -out %Arg _1"檔案名稱:"%
為引數使用此語法:
%(String)Arg_n%
例如,此執行字串列印具有包含檔案名稱的標題的檔案,使用指令 lp -t標題檔案名稱。
EXEC_STRING lp -t%(String)Arg_1%% (File)Arg_1"列印的檔案:"%
在執行字串中指定 shell:
/bin/sh -c 'command' /bin/ksh -c 'command' /bin/csh -c 'command'
此執行字串需要引數成為壓縮檔案。動作解壓縮檔案並使用 lp -oraw 列印。
EXEC_STRING /bin/sh -c 'cat%Arg _1 "列印的檔案:"% | \ uncompress | lp -oraw'
動作處理多重檔案引數的方法有三種:
動作可以重覆地執行,一次一個引數。當一個 EXEC_STRING 包含一個單一檔案引數與藉由在動作圖像上定位多重檔案所提供的多重檔案引數時,每個檔案引數的動作是分開執行的。
例如,如果供應多重檔案引數至以下動作定義:
ACTION DisplayScreenImage { EXEC_STRING xwud -in%Arg _1% ... }
DisplayScreenImage 動作是重覆地執行。
使用下列語法習慣用法之一:
如果您想要動作提示檔案名稱,使用此語法於每個檔案引數:
%(File)"提示符號"%
每個引數使用不同的 提示符號 字串。
例如,此執行字串提示兩個檔案。
EXEC_STRING xsetroot -cursor% (File)"游標位元映射:"% \ %(檔案)"遮罩位元映射:"%
使用下列語法習慣用法之一:
如果要建立接受多重定位檔案的動作,或在連按兩下時會顯示單一檔案提示符號的動作,請使用此語法於檔案引數:
%Arg_1"提示符號"%%Args%
動作將會以此格式發出指令:指令檔案 1 檔案 2 ...。
如果要接受多重定位檔案引數並執行指令行格式如下:
指令 檔案 1 檔案 2 ...
使用語法:
%Args%