25
SAS on Unix/Linux- from the terminal to GUI. L Gakava & S Kannan – October 2015

SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

SAS on Unix/Linux- from the terminal to GUI. L Gakava & S Kannan – October 2015

Page 2: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Agenda All about the terminal

o  Customising your terminal o  Basic Linux terminal commands o  Running SAS in non-interactive mode o  Available SAS file editors o  What to look out for on Unix/Linux platform

All about Graphical User Interface (GUI) o  Launching SAS GUI. o  Changing SAS default behaviour o  SAS ToolBox commands o  SAS editor commands.

Page 3: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Motivation - Why Use SAS On Unix/Linux? Using SAS on UNIX/Linux Platform o  Company migrating to UNIX/Linux o  Joining a company which is using SAS on the Linux platform

Challenge Too many commands to learn! Why Use SAS On Unix/Linux o  Customising Linux sessions will ensure you increase work efficiency by taking

advantage of the imbedded Linux tools. In general transferring and running large files will be quicker in Linux compared to PC*.

Page 4: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Terminal What to expect when you login? Customise: Update .bashrc file with this line PS1='$IV

$PWD$EE> ' will change your prompt to show the following:

% pwd /home/username % ls

/home/username>

Page 5: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Terminal Navigation

Command Meaning

ls list files and directories

ls -a list all files and directories

mkdir make a directory

cd directory change to named directory

cd change to home-directory

cd ~ change to home-directory

cd .. change to parent directory

Page 6: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1 to file2

rm file remove a file rmdir directory remove a directory

cat file display a file less file display a file a page at a time head file display the first few lines of a file tail file display the last few lines of a file

grep 'keyword' file search a file for keywords

wc file count number of lines/words/characters in file

Page 7: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Terminal useful commands How do you find out if a version of a file has changed? Command to compare two files. This is useful to compare outputs that have been re-run with an older

version. This will compare line by line, hence it’s only useful to compare different versions of the same file. This command cannot be used to compare datasets.

/home/username>diff file1.txt file2.txt

Page 8: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Terminal useful commands How do I search for text in multiple files? How do I run SAS in non-interactive mode/batch? How do I run code that is resource intensive?

/home/username>grep -i <string filename>

/home/username>sas <filename>

/home/username> sas –memsize max mysascode.sas

Page 9: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Editing SAS files How do I edit SAS files? Linux editors for plain text can be divided into two

categories: 1.  Console text editors- include emacs, jed, nano, pico

and vim. 2.  Graphical GUI editors - include gvim, gEDIT, Nedit,

Slick edit, Tea and Sublime The advantage of the GUI editor is intuitive user friendly interface while the

benefit of the console text editor is the suitability over long distance network connections which may or may not provide suitable bandwidth or reliability which would both be required by the GUI editors for remote operation. Console based text editors. GUI editors Face to face meeting or teleconference.

Page 10: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

What to look out for? LINUX platform is case sensitive and file directories and external file

names called within SAS are case sensitive but the SAS session is not.

Code written in PC SAS might not run on SAS because the Microsoft

Windows and Linux operating systems store text files in a different format. It is good practice convert a file from Microsoft Windows to Linux format by using a ‘dos2unix’ command on the terminal.

/home/username> dos2unix mysascode.sas

Page 11: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Still other things Other things to keep in mind Use the ‘&’ at the end of Linux commands. This means the

command will be executed in the background and you can continue using the terminal. Otherwise you will have to wait for the command to execute before you can use the terminal.

If you have a 3-button mouse you can copy text by highlighting

the text using your mouse. This automatically copies the text and you can paste the text by pressing down the wheel on the mouse.

Page 12: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Terminal help

If in doubt man it!!!

Type man or fman command to access the system's reference manuals. It can be

used to search for occurrences of specific text and other useful functions.

Page 13: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

ALL ABOUT GUI /home/username>sas&

Page 14: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Changing default behavior Selecting and copying text

Page 15: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Changing default behavior Truncation of inserted text? Text is not split at the cursor when you press ENTER or RETURN?

I cannot use PC shortcuts to copy and paste texts? Modify the entries in the SAS: KEYS window

Page 16: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Changing default behavior

Page 17: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Remember my configuration settings?

Page 18: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

SAS ToolBox

Page 19: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Program editor commands

Page 20: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Editing commands Copy c[N] Mark 1 or N lines to be copied cc Mark boundary of block to be copied Move m[N] Mark 1 or N lines to be moved mm Mark boundary of block to be moved Delete d[N] Mark 1 or N lines to be deleted dd Mark boundary of block to be deleted Insert ia[N] Insert 1 or N lines after this point i[N] Insert 1 or N lines from this point ib[N] Insert 1 or N lines before this point

Page 21: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Other useful editing commands Changing case cu[N] Change 1 or N lines to upper case cl[N] Change 1 or N lines to lower case ccu Change block to upper case ccl Change block to lower case mcu Change marked text to upper case mcl Change marked text to lower case

Justification jl[N] Left justify line to position N jjl[N] Left justify block to position N jc[N] Centre justify to line length N jjc[N] Centre justify block to line length N jr[N] Right justify 1 or N lines jjr Right justify block

Page 22: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

Other useful editing commands Repetition r[N] Repeat 1 or N times rr Repeat block Indentation >[N] Right shift 1 or N spaces >>[N] Right shift block 1 or N spaces )[N] Right shift destructive 1 or N spaces ))[N] Right shift destructive block 1 or N spaces <[N] Left shift 1 or N spaces <<[N] Left shift block 1 or N spaces ([N] Left shift destructive 1 or N spaces (([N] Left shift destructive block 1 or N spaces

Page 23: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

CONCLUSION §  This presentation gives the basis for a less

painful transition to using SAS on Linux from PC.

o  There is greater flexibility in using Linux and the reader

is encouraged to explore this in more detail to increase their productivity when using SAS on Linux.

Page 24: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1
Page 25: SAS on Unix/Linux- from the terminal to GUI. · 2015. 10. 23. · Terminal Navigation Command Meaning cp file1 file2 copy file1 and call it file2 mv file1 file2 move or rename file1

References Assignment.essayshark.com,. (2015). Retrieved 24 September 2015, from

https://assignment.essayshark.com/blog/wp-content/uploads/2015/08/programming-help.png Computerhope.com,. (2015). Linux and Unix diff command help and examples. Retrieved 22 September 2015,

from http://www.computerhope.com/unix/udiff.htm Cyberciti.biz,. (2015). How to: Change / Setup bash custom prompt (PS1). Retrieved 22 September 2015, from

http://www.cyberciti.biz/tips/howto-linux-unix-bash-shell-setup-prompt.html Ee.surrey.ac.uk,. (2000). UNIX Tutorial - Introduction. Retrieved 22 September 2015,

from http://www.ee.surrey.ac.uk/Teaching/Unix/unixintro.html Ippolito, G. (2015). Linux Text Editors. Yolinux.com. Retrieved 22 September 2015,

from http://www.yolinux.com/TUTORIALS/LinuxTextEditors.html Support.sas.com,. (2015). AUTOSPLIT, AUTOFLOW Command. Retrieved 25 September 2015, from

http://support.sas.com/documentation/cdl/en/hostunx/61879/HTML/default/viewer.htm#a003284265.htm Support.sas.com,. (2015). Browsing and Editing SAS Data Sets. Retrieved 25 September 2015, from

http://support.sas.com/documentation/cdl/en/fspproc/59583/HTML/default/viewer.htm#a000430506.htm Support.sas.com,. (2015). Getting Started with SAS in UNIX Environments. Retrieved 25 September 2015, from

http://support.sas.com/documentation/cdl/en/hostunx/61879/HTML/default/viewer.htm#usas.htm Support.sas.com,. (2015). SAS Windowing Environment in UNIX Environments. Retrieved 25 September 2015, from

http://support.sas.com/documentation/cdl/en/hostunx/61879/HTML/default/viewer.htm#a002460895.htm Support.sas.com,. (2015). The SAS ToolBox in UNIX Environments. Retrieved 25 September 2015, from

http://support.sas.com/documentation/cdl/en/hostunx/61879/HTML/default/viewer.htm#a000291162.htm Wikipedia,. (2015). Bash (Unix shell). Retrieved 22 September 2015,

from https://en.wikipedia.org/wiki/Bash_%28Unix_shell%29 Wikipedia,. (2015). Diff utility. Retrieved 22 September 2015,

from https://en.wikipedia.org/wiki/Diff_utility William Shotts, J. (2015). LinuxCommand.org: Learn the Linux command line. Write shell scripts.. Linuxcommand.org. Retrieved 22 September 2015, from

http://linuxcommand.org/index.php Www2.ocean.washington.edu,. (2015). Unix Tutorial. Retrieved 22 September 2015,

from http://www2.ocean.washington.edu/unix.tutorial.html#files