2012-09-19 32 views
0

我試圖將工作目錄作爲命名參數傳遞給vbscript。系統通常會擴展「。」到當前路徑,但是當我檢查命名的參數時,我只是得到字符串「。」。vbscript作爲命名參數傳遞當前目錄

這裏的命令行:

cscript myscript.vbs /a:"first arg" /b:second /c:. 

這裏的腳本:

dim args : set args = wscript.arguments.named 
    wscript.echo args.item("a") 
    wscript.echo args.item("b") 
    wscript.echo args.item("c") 

下面是輸出:

first arg 
    second 
    . 
+1

您將無法傳入一個點,並期望它在點作爲字符串傳遞時解析爲完整路徑。看看這裏,你可以在你的腳本中獲得完整的路徑。 http://stackoverflow.com/questions/2129327/how-to-get-the-fully-qualified-path-for-a-file-in-vbscript – Sorceri

回答

1
Set fso = CreateObject("Scripting.FileSystemObject") 
WScript.Echo fso.GetAbsolutePathName(args("c")) 

或者你可以使用/c:"%CD%"代替/c:.

但是,如果您始終想知道當前目錄,則不需要將它作爲參數傳遞。只需使用

cwd = CreateObject("WScript.Shell").CurrentDirectory