2018年7月25日水曜日

SASのカレントディレクトリのパスを取得する




カレントディレクトリをマクロ変数に格納する例です。

  
  libname _path  "." ;
  %let _curr = %sysfunc( pathname(_path) );




①「libname _path "."」でカレントディレクトリに_PATHっていうライブラリを割り当ててから、
② PATHNAME関数を使って_PATHライブラリのパスを取得し、
③ そのパスをマクロ変数_CURRに格納してます。



ちゃんとマクロ変数に格納できてるか見てみましょう。

  %put &_curr;

  ログ
  /home/amatsu


はい、OKっぽいですね!




また、単純にカレントディレクトリの場所を知りたいだけなら、以下を実行してログを見れば分かります。

  libname _path  "." ;

  ログ
  NOTE: ライブラリ参照名_PATHを次のように割り当てました。
        エンジン: V9
        物理名: /home/amatsu




他にも、SAS9.4のメンテナンスリリース5で追加された「DLGCDIR関数」を使えば、ログにカレントディレクトリのパスを表示できます。

  %let rc = %sysfunc(dlgcdir());

  ログ
  NOTE: 現在の作業ディレクトリは"/home/amatsu"です。



この関数の機能はこれだけじゃないので、また別の記事でも紹介します。



0 件のコメント:

コメントを投稿