Question

Existe-t-il un moyen d’exécuter un one-liner dans sas ou dois-je créer un fichier? Je cherche quelque chose comme le drapeau -e en perl.

Était-ce utile?

La solution

Mon favori utilise l'option -stdio

Soit:

sas -stdio

Puis commencez à taper. Ou ...

echo "proc options; run;" | sas -stdio

Autres conseils

La version Unix de SAS a été portée à partir de MVS il y a plusieurs années. Pour faire court, l'exécutable SAS n'est pas importé de STDIN. Pour que cela fonctionne avec Unix, modifiez simplement légèrement la suggestion précédente en quelque chose comme:

echo "your SAS code" > temp;sas -sysin temp

J'espère que cela vous sera utile.

sas -initstmt '%put hello world ; endsas ;' 

sas -initstmt 'proc print data=sashelp.class; run ;' 

Bien sûr, cela pourrait aussi être:

sas -initstmt '%inc large_program.sas; endsas;'

N'ayant jamais utilisé sas, ce que je pourrais essayer, c'est quelque chose comme:

echo <insert sas code here> | sas --execute-file -

Souvent, les applications vous permettent de spécifier «-» sous forme de fichier pour le lire à partir de STDIN. Et 'echo' affiche simplement ses arguments, et le | les relie ensemble.

Vous pouvez également utiliser l'option -nodms . Cela vous donnera une version en ligne de commande de Base.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top