1 / 47

Week Three Agenda

Week Three Agenda. Administrative Issues Link of the Week Review Week Two Information This Week’s Expected Outcomes Next Lab Assignment Break-Out Problems Upcoming Deadlines Lab Assistance, Questions, and Answers. Link of the Week.

imala
Download Presentation

Week Three Agenda

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Week Three Agenda Administrative Issues Link of the Week Review Week Two Information This Week’s Expected Outcomes Next Lab Assignment Break-Out Problems Upcoming Deadlines Lab Assistance, Questions, and Answers

  2. Link of the Week APA Style writing guidelines will be utilized for all lab assignment reports . APA Style Sixth Edition http://www.apastyle.org/learn/ APA Style Writing Workshop http://www.franklin.edu/student-services/student-learning-center/academic-support/workshops.html Grading will focus mainly on capitalization, punctuation, grammar, and citation.

  3. Link of the Week Linux Forums Web Site This web site allows individuals to post questions about Fedora Linux and Redhat Linux. The people that maintain this site are knowledgeable users of these operating systems. If your experiencing problems with commands or just want to learn more about these systems, you can find this type of information at this site. http://www.linuxforums.org/forum/redhat-fedora-linux-help/73994-system-commands-not-working-unless-sbin.html

  4. Review Week Two Information Caveat: Knoppix software was designed to be used as a Live CD because of specific features that make it’s performance and stability very suitable. It has been noted in several articles that Knoppix works best from a Live CD. Knoppix enthusiasts have attempted to install this software on a hard disk and encountered problems in the process. These problems are most pronounced when installing updates and new software.

  5. Review Week Two Information What is the next user interface going to be? The textual (command line) and the visual (graphical user) interfaces are the two most common modalities used to support engineers in network and system administration positions. The command line interface is recognized as the first generation and the graphical user interface is considered the second generation. Currently, research is trying to determine the next best interface. The command line interface is known as, “under the hood” method of interacting with the operating system.

  6. Review Week Two Information CLI Benefits: Manipulate textual data Quick customization of data allows engineers the ability to change data to another form Excellent for filtering data on systems Commands are rich, expressive, flexible, and powerful GUI Benefits: Reduces data overload Simple filtering and manipulation of the data Excellent for displaying trends in data

  7. Review Week Two Information Connect the standard output of one command to standard input of another command by using the pipeline operator (|). Demonstrate ps -ef ps –ef | wc –l ps –ef | awk ‘{print $2}’ ps –ef | grep dandrear ls –l | cut –c1-3 who | sort > /tmp/test_file.txt wc –l `ls` The output of the who command is piped to the sort function and written in ascending order in the /tmp/test_file.txt file. The “who” and “sort” commands execute in parallel.

  8. Review Week Two Information wc `ls` commands The word count (wc) command reads either standard input or a list of files and generates one or more of the following statistics: newline count, word count, and byte count. A snippit of output from the wc –l `ls` command: 19 xyz.sh 2 zombie 24 zombie.c 9890 total

  9. Review Week Two Information Commands who –b (time of last system boot) who –d (print dead processes) who –r (print current run level) List directory entries using the ls –l | less command drwxrwxrwx permissions (directory) -rwxrwxrwx permissions (file) lrwxrwxrwx permissions (Symbolic link) -rwxrwxrwx 2 dandrear (Hardlink) brw-rw---- permissions (block) crw------- Permissions (character)

  10. Review Week Two Information File: -rwx------ 1 dandrear faculty 28 Aug 20 21:08 uidoutput Physical link: -rw------- 2 dandrear faculty 110 Aug 20 21:08 window_hard_file Directory: drwxr-x---. 3 root root 4096 Apr 29 2011 audisp Symbolic link: lrwxrwxrwx. 1 root root 11 Apr 29 2011 init.d -> rc.d/init.d

  11. Review Week Two Information Character device crw------- 1 root root 5, 1 Sep 8 2011 console Block device brw-rw---- 1 root disk 8, 0 Sep 8 2011 sda

  12. Week Two Information A process associates a number with each file that it has opened. This number is called a file descriptor. When you log in, your first process has the following three open files connected to your terminal. Standard Input (stdin) : Filedescriptor 0 is open for reading. /dev/stdin Standard Output (stdout): File descriptor 1 is open for writing. /dev/stdout Standard Error (stderr): File descriptor 2 is open reading. /dev/stderr ls –a > /tmp/output 2>&1 (stderr redirected to stdout) > is equivalent to 1> (stdout (write) redirect symbol)) < is equivalent to <0 (stdin (read) redirect symbol)

  13. Week Two Information

  14. Review Week Two Information A file descriptor is generally an index for an entry in a kernel-resident data structure that contains information on all open files. Each process on the system has its own file descriptor table. A user application passes the abstract key to the kernel through a system call, and the kernel accesses the file for the application. What is a data structure? A data structure is a specific way of storing and organizing data in a computer so that it can be accessed with high efficiently. Data structures can be used as a single place for storing unrelated information.

  15. Review Week Two Information A data structure is a particular way of storing and organizing data in a computer so that it can be used efficiently. Different kinds of data structures are suited to different kinds of applications, and some are highly specialized to specific tasks. Some common data structures: array, hash table, linked list, queue, and stack

  16. Review Week Two Information The grep command searches the named input file(s)for lines containing a given pattern. Each line found is reported to standard output. Format: grep [OPTIONS] PATTERN [FILE...] Demonstrate: grep UNIX foobar_3 grep ‘^UNIX’ foobar_3 grep ‘UNIX$’ foobar_3

  17. Review Week Two Information A regular expression (abbreviated regex or regexp) is a sequence of characters that forms a search pattern, mainly for use in pattern matching with strings, or string matching, i.e. "find and replace"-like operations. The concept arose in the 1950s, when the American mathematician Stephen Kleene formalized the description of a regular language, and came into common use with the Unix text processing utilities ed, an editor, and grep (global regular expression print), a filter.

  18. Review Week Two Information The find command lists all pathnames that are in each of the given directories. Format: find [OPTIONS] PATH [expression] Demonstrate: find / -type d –print find ~dandrear –type d -print find . –print find / -name foobar

  19. Review Week Two Information Redirection Symbols: Redirect the standard output of a command to a file. date > /tmp/date_saved cat /tmp/date_saved Redirect the standard input of a command so that it reads from a file instead of from your terminal. cat < ~dandrear/Fall_2013_Solutions/test.txt Append the standard output of a command to a file. cat foobar_2 >> foobar_1

  20. Review Week Two Information One Liner Expressions: wc –l wc –l `ls` wc –l `ls` | sort –bn wc –l `ls` | sort –bn | tail –n 2 wc –l `ls` | sort –bn | tail –n 2 | head –n 1

  21. Review Week Two Information Commands • echo $PWD original=$PWD cd $original cd $2 • listing=`ls –l | cut –c52-80` for file_name in $listing do (boundary) Action Statements (block of statements) done (boundary)

  22. Review Week Two Information Commands • ls –l | more • ls –l | less (count the fields/use “q” to quit) • ls -a (does not hide entries)

  23. Review Week Two Information Shell Syntax • > /tmp/test_container • cat /etc/passwd • grep x /etc/passwd | cut –d’:’ –f1 • chmod 705 * • chmod 705 foobar_1 • grep line ~dandrear/Summer_2012_Solutions/foobar_1 • find ~dandrear –type d -print myshellArray[1]=$1 $0 • touch printnum.sh

  24. Review Week Two Information Commands The tilde (~) symbol is used to represent the user’s current home directory (e.g. /home/dandrear) Command line arguments example: ./intlist.pl 5 10 8 Command line argument syntax. $0 = ./intlist.pl $1 = 5, $2 = 10, and $3 = 8

  25. Review Week Two Information Demonstrate /home/dandrear/.profile umask 077 The umask variable contains the default permissions for a file and a directory. Variables Used by Korn Shell: HOME = is set to the full path name of your login directory (/home/dandrear) Command: echo $HOME PATH = contains the command search path. It is set to a series of path names separated by colons (:). Command: echo $PATH

  26. Review Week Two Information Variables Used by Korn Shell SHELL = This entry may be set by the system administrator to the path name of a shell interpreter other than the standard bash. Command: echo $SHELL TERM = specifies what terminal you are using. command: echo $TERM TMOUT = variable contains the integer attribute. If you set the value greater than zero, ksh terminates if you do not enter a command within the prescribed number of seconds after ksh issues the PS1 prompt. MAIL = Name of your Mail files EDITOR = Pathname for your editor

  27. Review Week Two Information Manual (man) Page Man formats and displays the on-line manual pages. If you specify section, man only looks at that section of the manual. Name is normally the name of the manual page, which is typically the name of a command, function, or file. However, if name contains a slash (/) then man interprets it as a file specification. Each section has an introduction which can be obtained with, e.g., "man 2 intro“ or “man ./foobar_1”. If MANPATH is set, man uses it as the path to search for manual page files. Command: echo $MANPATH

  28. Review Week Two Information Man Page Sections 1 Commands 2 System calls 3 C library routines 4 Devices and networks 5 File formats 6 Games and demos 7 Miscellaneous 8 System administration.

  29. Review Week Two Information Types of File and Directory Access: AccessFile MeaningDirectory Meaning r View file contents Search directory contents w Alter file contents Alter directory contents x Run executable file Make your current directory -rwx------ Owner (columns 2-4) 700 (111000000) ----rwx--- Group (columns 5-7) 070 (000111000) -------rwx Other (columns 8-10) 007 (000000111)

  30. Review Week Two Information Shell and Programs Access: To run a shell script, you will need read (r) and execute (x) access (r-x). The read access mode is a binary 4. The execute access mode is a binary 1. To run a binary executable program, you will need execute (x) access (--x). The execute access mode is a binary 1.

  31. Week’s 2 & 3 Expected Outcomes Upon successful completion of this module, the student will be able to: • Create scripts using shell/Perl variables and program control flow. • Use redirection and pipes to combine scripts and executables. • Use man page system and find script tools. • Discuss Perl Language

  32. Next Lab Assignment Introduction to Perl: Perl - Practical Extraction and Report Language Originally developed by Larry Wall, a linguist. Perl is 21 years old and Perl 5 is 14 years old. • Perl is a simple language - Compiles and executes like a shell script or a batch file - Perl doesn’t impose special growth limitations on arrays and data strings - Perl is a composite of C, AWK, and Basic - Originally developed to process text and automating tasks.

  33. Next Lab Assignment Introduction to Perl: The AWK utility is an interpreted programming language typically used as a data extraction and reporting tool. It is a standard feature of most Unix-like operating systems. AWK was created at Bell Labs in the 1970s, and its name is derived from the family names of its authors – Alfred Aho, Peter Weinberger, and Brian Kernighan. The power, terseness, and limits of early AWK programs inspired Larry Wall to write Perl just as a new, more powerful POSIX AWK and gawk (GNU AWK) were being defined.

  34. Next Lab Assignment Perl’s range of flexibility - System administration - Web development - Network programming - GUI development Major features - Procedural Programming Sequence or unstructured statements Includes routines, subroutines, methods, or functions - Object Oriented Programming Module uses “objects” and their interactions to design applications and computer programs.

  35. Next Lab Assignment Major features (continued) - Powerful built-in support for text processing - Large collection of third-party modules.

  36. Next Lab Assignment • Why is awk language so important? Awk language is an excellent filter and report writer. Many UNIX utilities generate rows and columns of information. Awk is an excellent tool for processing rows and columns, and it is easier to use awk than other conventional programming languages. Perl recognized the importance of awk, so it was included and enhanced in Perl.

  37. Next Lab Assignment Perl Scope – how far away you can see a variable in a script, looking through one. Perl has two visible mechanisms. Dynamic scoping of local variables, meaning that the rest of the block, and any subroutines that are called by the rest of the block, can see the variables that are local to the block. Lexical scoping of “my” variables, meaning that the rest of the block can see the variable, but other subroutines called by the block cannot see the variables.

  38. Next Lab Assignment A variable is a named object that resides in RAM memory and is capable of being examined and modified. A variable is used to hold information critical to the operation of the e A constant is a named object that resides in memory (usually in ROM) and is only capable of being examined. mbedded system.

  39. Next Lab Assignment The difference between a literal and a constant is that constants are given names so that they can be accessed more than once.

  40. Next Lab Assignment C Language Syntax short MyVariable; /* variable allows read/write access */ const short MyConstant=50; /* constant allows only read access */ #define fifty 50 void main(void){ MyVariable=50; /* write access to the variable*/ OutSDec(MyVariable); /* read access to the variable */ OutSDec(MyConstant); /* read access to the constant */ OutSDec(50); /* "50" is a literal */ OutSDec(fifty); /* fifty is also a literal */ }

  41. Next Lab Assignment The Advanced Scripting lab assignment requires two shell scripts to be written. srch.sh srchfile.sh Demonstrate Execution of srch.sh and srchfile.sh Case #1: ./srch.sh <pattern> <file name / directory name> Case #2: ./srch.sh <pattern> <.> The srch.sh script will call the srchfile.sh script to perform a specific task. The srchfile.sh searches for a file with a pattern and outputs the matching information to standard output. After all directory entries have been read, control is returned to the main script, srch.sh.

  42. Break Out Problems 1. scalar@ARGV 2. $ARGV[0] 3. filter 4. unless 5. $NUMBER 6. exit 1 7. $ARGV[1] 8. % (%directory) 9. $ ($quote) 10. @ (@names) 11. Regular expressions 12. tr [a-z] [A-Z] < foobar > /tmp/foo

  43. Next Lab Assignment Read your Programming Perl text book. Chapter One (1) Chapter Two (2) Review Chapter 32: Standard Modules Review Chapter 33: Diagnostic Output Messages Read Module Two listed under the course web page.

  44. Upcoming Deadlines • Lab Assignment 2-1, Simple Shell Scripting due September 29, 2013. • Lab Assignment 3-1, Advanced Scripting, due October 6, 2013. • Lab Assignment 4-1, Simple Perl Exercise, due October 13, 2013.

  45. Lab Assistance, Questions and Answers Questions Comments Concerns After class I will help students with their scripts.

More Related