我有我的加密當我連接到不同的服務器密碼的自動執行文件....代碼如下所示:SAS輸入語句
%global wspwd ewspwd hpwd ehpwd ;
/* Enter WORKSTATION Password Below */
filename ewspwdfl "/home/&sysuserid./ewspwd.txt" ;
proc pwencode in=’XXXXXXXX’ out=ewspwdfl ; run ;
data _null_ ;
infile ewspwdfl obs=1 length=l ;
input @ ;
input @1 line1 $varying1024. l ;
call symput('ewspwd',cats(substr(line1,1,l))) ;
call symput('wspwd',cats(‘XXXXXXXX’)) ;
run ;
我的問題是:爲什麼是
input @ ;
包括爲什麼
input @1 line1 $varying1024. l ;
是不夠的。
每當我用SAS創建數據集時,我從來不必包含「input @;」在我的發言中。我只是簡單地寫了一些內容:
input @1 firstname $ @15 lastname $ @30 date mmddyy6.;
爲什麼你認爲這是必要的?你嘗試刪除它,並做到這一點,使其無法正常工作?它以什麼方式不起作用? – Tom
我有這樣的設置......我想我不需要它,但我不確定所有依賴此autoexec文件的意外情況,所以我沒有改變任何東西。我曾經談過的人不知道它的目的...... – DukeLuke
你需要它來獲得一些INFILE選項來填充。如FILENAME =選項或EOV =選項。但我不認爲你需要它用於你的代碼使用的LENGTH =選項。 – Tom