CeleScript 是一個(gè)從 PE 的 XCMD 和為 Windows Mobile 上的 CeleCmd 演變而來(lái)的一個(gè)東西,我自己用了很久了,語(yǔ)法比較莫名其妙,但用起來(lái)比較方便實(shí)用。主要用來(lái)做一些安裝軟件、系統(tǒng)設(shè)置等自動(dòng)化操作。基本上的代碼都是以前為 Windows Mobile 寫的 CeleCmd 轉(zhuǎn)換而來(lái),沒有花太多精力,基本上屬副產(chǎn)品:)
下載:CeleScript 3.0.820
2009.1.11 更新
PC 上的一鍵安裝工具包:
工具包(常用工具):http://yonsm.net/up/CeleTools.exe
擴(kuò)展工具包(調(diào)試分析工具):http://yonsm.net/up/CeleTools+.exe
軟件包(普通用戶通用工具):http://yonsm.net/up/CeleUtilities.exe
CeleScript 使用說(shuō)明
注意:此幫助文件未經(jīng)仔細(xì)校對(duì),可能有部分命令解釋有誤。若有謬錯(cuò)之處,敬請(qǐng)指正。
[簡(jiǎn)介] [特點(diǎn)] [安裝] [使用] [菜單] [命令] [問(wèn)答] [許可] [致謝]
一、簡(jiǎn)介
歡迎使用功能強(qiáng)大、靈活方便的 CeleScript 命令解釋引擎。您只要編寫簡(jiǎn)單的 CeleScript 命令文件,就能在 Windows 中實(shí)現(xiàn)靈活強(qiáng)大的批處理功能。
[目錄]
二、特點(diǎn)
性能高效:命令解釋引擎精巧構(gòu)思,短小精干,運(yùn)行迅速。
功能強(qiáng)大:內(nèi)置支持多種命令,使用這些命令可以編寫出功能強(qiáng)大的批處理腳本。
擴(kuò)展支持:支持調(diào)用外部 EXE 和 DLL 函數(shù)。
使用靈活:支持格式統(tǒng)一的命令行參數(shù)和命令文件,可以在命令行、命令文件和程序界面中,調(diào)用 CeleScript 的各種功能。
其它功能:支持導(dǎo)入標(biāo)準(zhǔn)的和擴(kuò)展的 Windows 注冊(cè)表腳本腳本。
方便調(diào)試:在程序界面中執(zhí)行命令或命令文件,可以在日志窗口中跟蹤腳本執(zhí)行的流程和結(jié)果,方面發(fā)現(xiàn)命令腳本的問(wèn)題。
廣泛支持:一個(gè)可執(zhí)行文件,同時(shí)支持 Windows 2000/XP/2003/Vista,并且適用于 Windows XPE 中作為登錄解釋腳本引擎。
源碼公開:源代碼公開,方便更改定制和功能增強(qiáng),且在源代碼中增加擴(kuò)展命令支持非常容易。
[目錄]
三、安裝
安裝:綠色軟件,直接運(yùn)行 CeleScript.exe 即可使用。如果要關(guān)聯(lián) .csc 命令文件,可以在在程序中雙擊 CeleScript 的圖標(biāo)。
卸載:CeleScript 是“綠色”軟件,刪除 CeleScript.exe 即可卸載。如果選擇了關(guān)聯(lián) .csc 命令文件,請(qǐng)?jiān)诔绦蛑性俅坞p擊 CeleScript 的圖標(biāo)取消文件關(guān)聯(lián)。
[目錄]
四、使用
使用方式
直接執(zhí)行本程序,將顯示允許輸入命令和現(xiàn)實(shí)執(zhí)行結(jié)果的對(duì)話框,您可以直接在程序界面上執(zhí)行各種操作。
在命令行參數(shù)中使用,例如,要?jiǎng)?chuàng)建快捷方式,執(zhí)行“CeleScript.exe LINK %M\程序\測(cè)試程序.lnk,%W\Test.exe”即可。
在命令文件中使用,例如,“CeleScript.exe LOAD C:\Test\*.csc”。
如果省略命令關(guān)鍵字,將自動(dòng)判斷參數(shù),且支持通配符和子目錄遞歸查找匹配文件(前導(dǎo)“!”)。如 CeleScript.exe %C\*.csc。CeleScript 將按以下規(guī)則解析執(zhí)行:
.inf:安裝 INF 文件。
.csc、.reg:執(zhí)行 CeleScript 的 LOAD 命令。
.dll、.ocx、.ax:執(zhí)行 CeleScript 的 CDLL 命令。
.exe、.com、bat、cmd:運(yùn)行可執(zhí)行文件和批處理文件。
命令格式
CeleScript 的命令是一行字符串,以大寫的四字符關(guān)鍵字開始,緊跟著的是空格或制表符,后面是命令的參數(shù)。
參數(shù)之間用逗號(hào)“,”分隔,如果在參數(shù)中要使用逗號(hào)本身,則需要使用“%,”的轉(zhuǎn)義字符。
不同的命令的參數(shù)格式不一致,詳細(xì)請(qǐng)參考 命令。
變量與宏
CeleScript 讀取一條個(gè)命令文件后,首先展開其中用“%”號(hào)前導(dǎo)的宏:
E 當(dāng)前腳本的完整路徑
C 當(dāng)前腳本的目錄
T 當(dāng)前時(shí)間
D 當(dāng)前日期
X 最后一條命令的返回值,十六進(jìn)制格式,如 0XFFFFFFFF
x 最后一條命令的返回值,十進(jìn)制格式,如 -1
0-9 用戶變量值,用戶可以通過(guò) EVAL 命令設(shè)置變量 0 到 9 的內(nèi)容
A 可能是 \Application Data
Y 可能是 \My Documents
S 可能是 \Windows\Startup
W 可能是 \Windows
P 可能是 \Windows\“開始”菜單\程序
M 可能是 \Windows\“開始”菜單
F 可能是 \Program Files
O 可能是 [User Name]\SendTo
R 回車字符
N 換行字符
# 十六進(jìn)制字符,后面緊跟這四個(gè)十六進(jìn)制字符,如“%#FEFF”
% 由于“%”用于宏轉(zhuǎn)義,如果需要在參數(shù)中確實(shí)需要使用“%”本身,則需要用兩個(gè)“%”代替,如“%1”要寫成“%%1”。
, CeleScript 把“,”作為參數(shù)分隔符,與“%”類似,如果在參數(shù)中需要使用“,”本身,則需要使用“%,”的形式。
命令文件
CeleScript 的命令文件是由 CeleScript 命令組成的命令集合。
每條命令單獨(dú)一行。
命令文件中可以使用注釋,注釋必須單獨(dú)一行,以“;”作為注釋行開始。
命令文件支持 UNICODE 格式和 ASCII 格式,為了更高的執(zhí)行效率,推薦使用 UNICODE 格式。
命令文件中可以雜合 Windows Registry Script 內(nèi)容,CeleScript 會(huì)把 Registry Script 導(dǎo)入到注冊(cè)表。但是使用這種方式必須十分小心,因?yàn)閳?zhí)行過(guò)程中,Registry Script 部分會(huì)被修改(僅在內(nèi)存中),可能導(dǎo)致 CALL 和 GOTO 無(wú)法正常使用(使用原則:最新會(huì)被執(zhí)行到的 Registry Script 放在文件最后的子過(guò)程中,這樣就能避免問(wèn)題)。
[目錄]
五、界面
執(zhí)行:執(zhí)行命令。
關(guān)于:顯示程序版本、版權(quán)和作者信息。
退出:退出 CeleScript 程序。
清除日志:?jiǎn)螕?CeleScript 圖標(biāo)。
文件關(guān)聯(lián):雙擊 CeleScript 圖標(biāo)。
[目錄]
六、命令
[LOAD] [BATC] [IFEX] [ELSE] [CALL] [GOTO] [PROC] [ENDP] [PLAY] [BEEP] [MSGX] [DLGX] [LINK] [FILE] [REGX] [ENVI] [SEND] [WAIT] [KILL] [SHUT] [EXEC] [CDLL] [EVAL] [ASOC] [CCUI]
具體使用方法請(qǐng)參看附件中的 Resource\CeleScript.htm,或者在 CeleScript 中點(diǎn)擊標(biāo)題欄右上角的問(wèn)號(hào)按鈕七、問(wèn)答
在 XPE 中,如何使用 CeleScript 作為登錄解釋引擎?
我也不知道。
[目錄]
八、許可
本程序及其源代碼是可以免費(fèi)獲取的。
如果您使用或修改了其中任何的源代碼,則必須把使用這些源代碼的項(xiàng)目以及項(xiàng)目?jī)?nèi)的所有源代碼和文檔公開。否則禁止使用本程序源代碼的任何部分。
您可以復(fù)制、分發(fā)和傳播無(wú)限制數(shù)量的軟件產(chǎn)品,但您必須保證每一份復(fù)制、分發(fā)和傳播都必須是完整和真實(shí)的,包括所有有關(guān)本軟件產(chǎn)品的軟件、電子文檔,版權(quán)和商標(biāo)宣言。
作者特此申明對(duì)本軟件產(chǎn)品之使用不提供任何保證,不對(duì)任何用戶保證本軟件產(chǎn)品的適用性,不保證無(wú)故障產(chǎn)生;亦不對(duì)任何用戶使用此軟件所遭遇到的任何理論上的或