2013-03-08 17 views
1

Я пытаюсь изменить следующую гипотетическую ссылку на libname на что-то еще, чтобы указать на другой общий диск.sas libname в unix формате

libname mylibref '/u/mystuff/sastuff/work'; 

Это ссылки для совместного использования диска k:\.

И я хочу изменить его, чтобы указать общий диск m:\.

Как мне изменить /u/mystuff/sastuff/work, чтобы сделать это? Я на компьютере с Windows, и я не знаю, почему это имя SAS в формате Unix. Я взял на себя некоторые проекты, написанные в SAS, и не был действительно знаком с этим конкретным эталонным форматом ...

ответ

1

Если это имя библиотеки Unix, возможно, код предназначен для удаленного доступа к серверу Unix SAS ,

например.

 
/* Local code - processed on PC */ 
libname local 'c:\temp' ; 
data local.test ; 
    do i = 1 to 100 ; 
    output ; 
    end ; 
run ; 

rsubmit ; 
    /* Remote code - processed on server */ 
    libname unix '/u/user/stuff' ; 
    data unix.test ; 
    do i = 1 to 100 ; 
     output ; 
    end ; 
    run ; 
endrsubmit ; 
0

SAS может быть слишком полезно с его синтаксисом и попробовать, чтобы сделать жизнь проще для пользователей, но иногда это может привести к путанице. Это хороший пример.

Переднее слэши в текущем отчете Имя_библиотек интерпретируются как путь на текущей Windows по умолчанию езды для сеанса SAS, который, по-видимому, в вашем случае является диском K и будет эквивалентно:

libname mylibref 'K:\u\mystuff\sastuff\work'; 

Таким образом, чтобы изменить libref к вашему M диску просто представить новую Имя_библиотеку заявление:

libname mylibref 'M:\u\mystuff\sastuff\work'; 
0

Это стоит помнить, что прямой косой черты могут быть использованы на окнах, так что-то вроде следующего должно выполняться без ошибок:

libname mylibref 'M:/u/mystuff/sastuff/work'; 

реверсе (обратной косой черты \ на \ Unix) не будет работать!

Не уверен, что это действительно сработает в вашем случае, если у вас нет точки монтирования с вашего диска M до unix ..

Смежные вопросы