打開駐留在 Cary 服務器上的文件。嗨,SE們,
我需要寫一行 JSL 來完成這行應該做的事情:
open("smb://jmpsmd.na.sas.com/E/Data/etl code/JMP DataMart 3/GOBUCKS.txt")
即,打開位於 Cary 服務器上的文件。
該代碼必須適用於 Windows 和 Mac。
該代碼必須適用於 Cary 的人員和遠程員工。 (假設此人可以通過 VPN 訪問這些,無論如何。)用戶收到憑據提示是可以的。
我還嘗試使用 %20 而不是空格,但沒有用。 我知道這非常簡單,但我不會偶然發現它——我已經嘗試過 
有任何想法嗎? 作為獎勵,當我運行上面的代碼時,我的 Mac 將本地目錄添加到路徑(聖誕禮物?)之前,我也不希望這樣做。
mac 要我使用的路徑,即使用 pickdirectory() 識別文件夾時得到的路徑是
“/Volumes/E/Data/etl code/JMP DataMart 3/”。
這是完全不可能的,因為在執行此代碼之前,不能期望用戶自行連接到服務器。
感謝您的任何建議!
乾杯,
布雷迪
回复:打開駐留在 Cary 服務器上的文件。Michael Hecht 提供了一個解決方案;讀完之後,我並沒有因為沒有弄清楚這一點而感到難過。 它在下面。
謝謝你,邁克爾!
-布雷迪
mount = Function({server}, {Default Local},
If( Host Is( Mac ),
Run Program( Executable( "/usr/bin/osascript" ),
Options( { "-e", Eval Insert( "mount volume \!"smb://^server^\!"" )}),
Read Function( "text" ));
server = Concat Items( Remove( Words( server, "/" ), 1 ), "/" );
Eval Insert( "/Volumes/^server^" );
,
Eval Insert( "\!\\!\^server^" )
)
);
users = mount( "jmpsrv01.na.sas.com/Users" );
Files In Directory( Eval Insert( "^users^/Drake" ));