Download presentation
Presentation is loading. Please wait.
Published byGerard Frederick Summers Modified over 9 years ago
2
Week Two Agenda Announcements Link of the week Use of Virtual Machine Review week one lab assignment This week’s expected outcomes Next lab assignments Break Out Problems Upcoming Deadlines Questions and answers
3
Link of the week http://dmoz.org/Computers/Software/Operating_Systems Definition of Operating System (OS) Basic tasks performed by an operating system –Control and allocate memory –Prioritize system requests –Control input and output devices –Facilitate networking and management file systems
4
Link of the week Services an Operating System (OS) perform –Process management –Memory management OS coordinates various types of memory –File systems –Networking –Graphical user interface (GUI) and command line –Device drivers –Security Internal management External management
5
Use of the Virtual Machine Knoppix features Demonstrate how to ftp a file from Knoppix software to the cs.franklin.edu (Einstein) machine using VMware software Open two Konqueror windows Enter the ftp protocol sftp://dandrear@cs.franklin.edu/export/home/dandrear in one screen Open a Konsole screen and create a file to transfer to the cs.franklin.edu machine.
6
Review week one lab assignment Use the editor of your choice to open and save a file. vi test_file.txt o (insert text - alpha character) Esc key (exit insert mode) :wq! (save text entered in file) :q! (quit without saving changes) cd $1 $1, $2, $3
7
Review week one lab assignment if [ ] then Action statements fi while [ ] do Action statements done for file_name in * do Action statements done
8
Review week one lab assignment #!/bin/ksh if [ $# -ne 1 ] then Action statements exit elif [ $1 -le 0 ] then Action statements fi while [ $variable -gt 0 ] do printf $variable if [ $variable -gt 1 ] then Action statements fi VARIABLE=$(( $VARIABLE - 1)) done print
9
Review week one lab assignment Sample data for next slide three slides Directory name: /work File name: file_one.sh Number of lines: 10 File name: file_two.sh Number of lines: 15 File name: file_three Number of lines: 5
10
Review week one lab assignment #!/bin/ksh # Verify that there is only one argument on the command line if [ $# -gt 1 ] then echo "Error. Can only use 0 or 1 arguments." echo "Usage: maxlines.sh [directory]." exit 1 fi flag=1
11
Review week one lab assignment # If the number of positional parameters is equal to zero search through # the current directory. No directory was provided on the command line if [ $# -eq 0 ] then for testfile in * do if [ -f $testfile ] then linetest1=`wc -l < $testfile` if [ $flag -eq 1 ] then startline=$linetest1 startfile=$testfile flag=2 fi
12
Review week one lab assignment #The script executes the following code after the first pass if [ $startline -lt $linetest1 ] then startline=$linetest1 startfile=$testfile fi done echo "File $startfile has the most lines with $startline lines." exit 0 fi
13
Review week one lab assignment man (uses pagination from the less command) ls –l ps cut –f 9 cut –c 1-7 wc -l $# date exit 0 exit 1 NUMBER=$2 echo $NUMBER less
14
Review week one lab assignment cp file1 file2 mv file1 file2 rm file1 rmdir dir1 clear head tail pipes who myArray[1]=$1 more ps –ef ls
15
Weeks 2 and 3 expected outcomes Upon successful completion of this module, the student will be able to: Create scripts using shell variables and program control flow. Use man page system and find script tools. Use redirection and pipes to combine scripts and executables.
16
Next lab assignment Concentric Circle Relationship
17
Next lab assignment drwxrwxrwx permissions -rwxrwxrwx permissions exit Each command has a return value. 0 indicates a normal exit 1 indicates a failed exit The return value of a command can be used with conditional or iteration commands.
18
Next lab assignment Users can connect the standard output of one command into the standard input of another command by using the pipeline operator (|). Demonstrate: ps -ef ps –ef | wc –l ps –ef | awk ‘{print $2}’ who –b (time of last system boot) who –d (print dead processes) who –r (print current run level).
19
Next lab assignment 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: File descriptor 0 is open for reading. Standard output: File descriptor 1 is open for writing. Standard error: File descriptor 2 is open reading.
20
Next lab assignment Linux command documentation is known as “man”. Each page is a self-contained document. The Manual sections are split into eight numbered sections: 1 General commands. 2 System calls 3 C library functions 4 Special files (usually devices, those found in /dev) and drivers. 5 File formats and conventions 6 Games and screensavers 7 Miscellaneous 8 System administration commands and daemons
21
Next lab assignment The grep command searches the named input file(s) for lines containing a given pattern. Normally, each line found is reported to standard output. Demonstrate: grep text ~dandrear/Fall08_solutions/foobar1 grep pattern file1 grep pattern * The find command lists all pathnames that are in each of the given directories. Demonstrate: find / -type d –print find ~dandrear –type d -print find. –print find / -name newuid
22
Next lab assignment Redirect the standard output of a command to a file. date > /tmp/date_saved Redirect the standard input of a command so that it reads from a file instead of from your terminal. cat < ~dandrear/Fall08_solutions/test.txt Append the standard output of a command to a file. cat foobar2 >> foobar1
23
Next lab assignment Demonstrate: srch.sh script execution The coding and testing process Code one small script function at a time. Test that function before adding more code to the script. Program coding is an iterative process (code,test,code,test,code,test, …).
24
Break Out Problems ps | wc –l who | awk ‘{print $1}‘ | sort –u | wc –l ps –ef | awk ‘{print $1}’ | sort –u | wc –l sort –r names.txt ps –ef | awk ‘{print $9, $1}’ find /bin -name gzip find /etc -name motd > newfile rm newfile date | cut –c12-19 nohup grep This ~dandrear/summer08_solutions/report.txt & cp test_data.txt ~dandrea/temp mv test_data.txt ~dandrear/temp printf $NUMBER Script: ~dandrear/Fall08_solutions/person.sh #!/bin/ksh person=`who | grep $1` echo $person
25
Upcoming Deadlines Simple Shell scripts, Lab Assignment 2-1 due 9/23/08. Verify that your login is correct on Einstein. Configure your directory structure on Einstein to comply with course specifications. Advanced Scripting, Lab Assignment 3-1 due 9/30/08. Read pages 885-899 in Chapter 14, and pages 1073- 1095 in the Appendix of Essential System Administration
26
Questions and answers Questions Comments Concerns After class I will help students with their scripts.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.