2020年7月6日月曜日

スクリプトに組み込むための1行コード(one-liner)

忘れやすいのでメモ
1. Unixの場合には-stdio オプションで、コードを標準入力から投入できる。

echo "proc options option=dms value; run;" |  sas -nodms -stdio

2.  Libnameを書かなくても任意のディレクトリにSASデータセットを出力できる。

 echo "data '/var/tmp/foo.sas7bdat'; set sashelp.class; run;" | sas -stdio

2 件のコメント :

  1. パスワードの文字列をShellスクリプトからエンコードするとき
    echo "proc pwencode in='hogehoge'; run;" | sas_en -stdio -nonews -nonotes -nosource 2>&1 | grep SAS00

    返信削除
  2. Object Spawnerがタイムアウトを起こすときの問題を追跡するために、以下のようにスクリプトを実行してログを確認します。LIBNAMEのアサインでタイムアウト起きることがあります。

    echo "libname _all_ list;" | Lev1/SASApp/WorkspaceServer/WorkspaceServer.sh -stdio -nodms -batch -altlog /tmp/foo.log

    返信削除