Agenda Introduction Administrative Announcements Link of the Week Expected Outcomes This Week’s Topics Next Week’s Lab Assignment Break Out Problems Upcoming.

Slides:



Advertisements
Similar presentations
Chapter 3: Editing and Debugging SAS Programs. Some useful tips of using Program Editor Add line number: In the Command Box, type num, enter. Save SAS.
Advertisements

Week One Agenda IntroductionIntroduction Administrative AnnouncementsAdministrative Announcements Link of the WeekLink of the Week Expected OutcomesExpected.
CS Lecture 03 Outline Sed and awk from previous lecture Writing simple bash script Assignment 1 discussion 1CS 311 Operating SystemsLecture 03.
Using MyMathLab Features You must already be registered or enrolled in a current MyMathLab class in order to use MyMathLab. If you are not registered or.
Guide To UNIX Using Linux Third Edition
Guide To UNIX Using Linux Third Edition
Introduction to Unix (CA263) Introduction to Shell Script Programming By Tariq Ibn Aziz.
Sydney Opera House. Week Three Agenda Administrative Issues Link of the week Review week two lab assignment This week’s expected outcomes Next lab assignment.
Advanced File Processing
Advanced Shell Programming. 2 Objectives Use techniques to ensure a script is employing the correct shell Set the default shell Configure Bash login and.
Week One Agenda IntroductionIntroduction Administrative AnnouncementsAdministrative Announcements Link of the WeekLink of the Week Expected OutcomesExpected.
Introduction to Shell Script Programming
Week One Agenda IntroductionIntroduction Administrative AnnouncementsAdministrative Announcements Link of the WeekLink of the Week Expected OutcomesExpected.
Week One Agenda IntroductionIntroduction Administrative AnnouncementsAdministrative Announcements Link of the WeekLink of the Week Expected OutcomesExpected.
Week One Agenda IntroductionIntroduction Administrative AnnouncementsAdministrative Announcements Link of the WeekLink of the Week Expected OutcomesExpected.
Week One Agenda IntroductionIntroduction Administrative AnnouncementsAdministrative Announcements Link of the WeekLink of the Week Expected OutcomesExpected.
Agenda User Profile File (.profile) –Keyword Shell Variables Linux (Unix) filters –Purpose –Commands: grep, sort, awk cut, tr, wc, spell.
An Introduction to Unix Shell Scripting
Business Discipline Breakout Session Summer 2000 ION Conference Facilitated By: Marcy Satterwhite.
Week Three Agenda Administrative Issues Link of the Week Review Week Two Information This Week’s Expected Outcomes Next Lab Assignment Break-Out Problems.
9 Chapter Nine Compiled Web Server Programs. 9 Chapter Objectives Learn about Common Gateway Interface (CGI) Create CGI programs that generate dynamic.
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.
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.
Agenda Introduction Administrative Announcements Link of the Week Expected Outcomes This Week’s Topics Next Week’s Lab Assignment Break Out Problems Upcoming.
Week One Agenda IntroductionIntroduction Administrative AnnouncementsAdministrative Announcements Link of the WeekLink of the Week Expected OutcomesExpected.
Shell Script Programming. 2 Using UNIX Shell Scripts Unlike high-level language programs, shell scripts do not have to be converted into machine language.
CSCI 51 Introduction to Computer Science Dr. Joshua Stough January 20, 2009.
UNIX Shell Script (1) Dr. Tran, Van Hoai Faculty of Computer Science and Engineering HCMC Uni. of Technology
1 System Administration Introduction to Scripting, Perl Session 3 – Sat 10 Nov 2007 References:  chapter 1, The Unix Programming Environment, Kernighan.
Agenda Introduction Administrative Announcements Link of the Week Expected Outcomes This Week’s Topics Next Week’s Lab Assignment Break Out Problems Upcoming.
Bilgisayar Mühendisliği Bölümü CENG 102 – Computer Programming Melek OKTAY Syllabus Administrative Information.
Agenda Link of the week Use of Virtual Machine Review week one lab assignment This week’s expected outcomes Review next lab assignments Break Out Problems.
Week One Agenda IntroductionIntroduction Administrative AnnouncementsAdministrative Announcements Link of the WeekLink of the Week Expected OutcomesExpected.
Agenda Introduction Administrative Announcements Link of the Week Expected Outcomes This Week’s Topics Next Week’s Lab Assignment Break Out Problems Upcoming.
Lesson 2-Touring Essential Programs. Overview Development of UNIX and Linux. Commands to execute utilities. Communicating instructions to the shell. Navigating.
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.
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.
SC300 Unit one Prof. Julie Shertzer AIM: JulieShertzer.
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.
Using MyMathLab Features of MyMathLab You must already be registered or enrolled in a current MyMathLab class in order to use MyMathLab. If you are not.
Chapter Five Advanced File Processing. 2 Lesson A Selecting, Manipulating, and Formatting Information.
Week One Agenda IntroductionIntroduction Administrative AnnouncementsAdministrative Announcements Link of the WeekLink of the Week Expected OutcomesExpected.
Sydney Opera House. Week Three Agenda Administrative Issues Link of the week Use of the Virtual Machine Review week two lab assignment This week’s expected.
Chapter Six Introduction to Shell Script Programming.
Week Three Agenda Administrative Issues Link of the week Review week two lab assignment This week’s expected outcomes Next lab assignment Upcoming deadlines.
Week Fourteen Agenda Announcements Link of the week Review week thirteen lab assignment Next lab assignment Previous Lab Assignment Grading answers for.
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.
Lesson 3-Touring Utilities and System Features. Overview Employing fundamental utilities. Linux terminal sessions. Managing input and output. Using special.
Week Three Agenda Administrative Issues Link of the Week Review Week Two Information This Week’s Expected Outcomes Next Lab Assignment Break-Out Problems.
Sydney Opera House. Week Three Agenda Administrative Issues Link of the week Use of the Virtual Machine Review week two lab assignment This week’s expected.
Week One Agenda IntroductionIntroduction Administrative AnnouncementsAdministrative Announcements Link of the WeekLink of the Week Expected OutcomesExpected.
Agenda Introduction Administrative Announcements Link of the Week Expected Outcomes This Week’s Topics Next Week’s Lab Assignment Break Out Problems Upcoming.
Week Four Agenda Link of the week Review week three lab assignment This week’s expected outcomes Next lab assignment Break-out problems Upcoming deadlines.
Course Information CSE 2031 Fall Instructor U. T. Nguyen /new-yen/ Office: CSEB Office hours:  Tuesday,
1 Week 8 Creating Simple Shell Scripts. 2 Chapter Objectives  In this chapter, you will :  Learn how to create Shell Scripts  Commenting / Making Portable.
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.
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.
Copyright © 2010 Pearson Education, Inc. or its affiliate(s). All rights reserved.1 | Assessment & Information 1 Online Testing Administrator Training.
INTRODUCTION to Operations Management MT435 – 02 Week 1 Instructor – Dr. Stuart Childers 1-1.
Financial Management of ECE Programs.  Go to “Tools”  Click on “Personal Information” to edit your personal information (including address) or.
Welcome to MT140 Introduction to Management Unit 1 Seminar – Introduction to Management.
ITEC400 Week One Robert D’Andrea
CSCI 203: Introduction to Computer Science I
Week Two Agenda Announcements Link of the week Use of Virtual Machine
Week Three Agenda Link of the Week Review Week Two Information
Sydney Opera House.
Using MyMathLab Features
Week Three Agenda Link of the Week Review Week Two Information
Week 1 – Lesson 2: Creating Shell Scripts, Linux Commands
CSCI 203: Introduction to Computer Science I
Presentation transcript:

Agenda Introduction Administrative Announcements Link of the Week Expected Outcomes This Week’s Topics Next Week’s Lab Assignment Break Out Problems Upcoming Deadlines Lab assistance, questions, and chat time

Introduction Instructor: Professor Bob D’Andrea Software Engineer Instructor at Franklin University since 2004 Phone No Cell No Program Chair of Information and Technology: Mr. Todd Whittaker Phone #

Administrative Announcements Instructor commitment Respond daily to student s. Post exam and lab assignment grades as quickly as possible in student grade books. Post student midterm and final exam status on the Announcement page after each exam has been received from the Student Learning Center (SLC). Office hours Monday through Friday: 9:00 AM – 9:00 PM Saturday and Sunday: 12:00 AM – 6:00 PM Personalized Franklin Live session can be scheduled with a student(s) needing individual assistance.

Administrative Announcements Course Web Site Were students able to read my comments in the Class Communication icon? Attendance and/or call me if you are unable to attend class. Otherwise, you will be marked “Not Present” and you will receive an notice. cs.franklin.edu server Everyone will need a login to the cs.franklin.edu machine? Putty is the prescribed open source interface for this class. You will use putty to access the cs.franklin.edu machine. Student lab assignments will be tested under your itec400/homework directory.

Administrative Announcements Recorded Franklin Live Power Point Presentations Franklin Live file name format: Franklin Live file name format: -rwx---r-x 1 dandrear faculty Apr 3 21:53 Week_One_1_UNIX_ppt.ppt -rwx---r-x 1 dandrear faculty Apr 3 21:54 Week_One_1_UNIX.pptx Each week, the Power Point presentation used in the Franklin Live session will be available on Monday mornings for printing and/or review prior to the online session.

Administrative Announcements format for completed lab assignments a notification when an assignment is completed and ready to be graded. The “Subject” line of your notification should have the following format: Example: dandrear V1WW Lab Assign format for questions Example: dandrear V1WW Question(s) Example: dandrear V1WW Question(s) Scripts and text file suffix All scripts and text files shall end with a suffix (e.g.,sh,.pl,.txt and.cgi). Homework assistance: Do not solicit help from the Internet for lab assignments. If caught soliciting assistance from the Internet, Franklin University will take action against you.

Administrative Announcements : Drop Box: Deposit all lab assignments in the Drop Box. The Drop Box is located under your Franklin University course Web page “Communications” tab. Student drop box documentation link below /home/user name/itec400/homework This directory is where your scripts and text files are graded.

Administrative Announcements Turnitin.com Assignments The Light Directory Access Protocol (LDAP) and Public Domain/Open Source lab assignments must be submitted to Turnitin.com. Your report will be verified by Turnitin.com for author originality. If Turnitin.com indicates that your percentage of originality is 45 percent or greater, I will not grade the paper. I will recommend that you seek assistance from the Student Learning Center (SLC).

Administrative Announcements UNIX System Administration Syllabus Optional Materials Tutorials: Refer to the following web sites throughout UNIX System Administration. They are excellent resources for UNIX and Linux: UNIX System Administration Independent Learning (USAIL) (NO LONGER AVAILABLE) l/ Linux help, tutorials and tips UNIX Tutorial for Beginners UNIX help for Users.

Administrative Announcements APA style format: Your writing assignments will be graded on citing sources, spelling, punctuation, and capitalization. All reports must have a cover and reference page. Link of the week: New links are provided weekly to direct students to information on the Internet that will aid them with class lab assignments and enhance their overall learning experience. : Tutoring and workshops: Student Learning Center (SLC) Writing appointments via Franklin Live

Administrative Announcements VMware software: You should receive a Live CD with Knoppix recorded on it from Franklin University. If you do not receive this CD, call the Helpdesk. The Knoppix software can also be downloaded from the course site. Creating scripts using Knoppix software: ftp from your Knoppix software to cs.franklin.edu

Link of the Week Open Source Software:

Link of the Week Open Source Software: Definition of Open Source Software. Distributed in source code format Distributed in source code format Developed in a public, collaborative manner Developed in a public, collaborative manner Software is free of charge Software is free of charge Allows anyone to create modifications to the software, port it to new operating systems and processor architectures Allows anyone to create modifications to the software, port it to new operating systems and processor architectures Who benefits from open source products?

Expected Outcomes Upon successful completion of this course, students will be able to: Create non-trivial shell scripts.Create non-trivial shell scripts. Perform appropriate UNIX System Administration tasks.Perform appropriate UNIX System Administration tasks. Compose non-trivial scripts using Perl programming language.Compose non-trivial scripts using Perl programming language. Distinguish the roles of Linux and Open Source software.Distinguish the roles of Linux and Open Source software. Incorporate the make utility appropriately within programs.Incorporate the make utility appropriately within programs. Create an open source presentation of your choice.Create an open source presentation of your choice. Create a CGI scriptCreate a CGI script

Basic UNIX Primer. UNIX comes in a variety of constantly changing flavors (SUNOS, HPUX, BSD and Solaris, just to name a few). Each of these UNIX types will have small variations from all of the others. This may seem a bit discouraging at first, but in reality each version of UNIX has more in common with all of the others than differences. The ls command, for example, will give a listing of the current directory in any UNIX environment. The changes or semantics local to any particular brand of UNIX should be explained in the manual pages that come with that particular system.

Basic UNIX Primer The purpose of this explanation is not to explore the differences between different UNIX flavors, but rather to assume that they are all equivalent and look at how the different shells behave.

UNIX Commands The UNIX operating system comes with many commands that allows the user to interact with their computer. UNIX commands are simply programs that are executed when called for. The usual place for the storage of these commands is the /usr/bin directory. The commands that are available on a particular machine will vary. There is a set number of standard commands that come with a UNIX system, but there is no limit to the commands that can be made available.

What is a shell? A shell is an entity that takes input from the user and deals with the computer rather than have the user deal directly with the computer. If the user had to deal directly with the computer he would not get much done as the computer only understands strings of 1's and 0's. While this is a bit of a misrepresentation of what the shell actually does (the idea of an operating system is neglected) it provides a rough idea that should cause the reader to be grateful that there is such a thing as a shell. A good way to view a shell is as follows. When a person drives a car, that person doesn't have to actually adjust every detail that goes along with making the engine run, or the electronic system controlling all of the engine timing and so on. All the user (or driver in this example) needs to know is that D means drive and that pressing accelerator pedal will make the car go faster or slower. The dashboard would also be considered part of the shell since pertinent information relating to the user's involvement in operating the car is displayed there.

What is a shell? In fact any part of the car that the user has control of during operation of the car would be considered part of the shell. I think the idea of what a shell is coming clear now. It is a program that allows the user to use the computer without him having to deal directly with it. It is in a sense a protective shell that prevents the user and computer from coming into contact with one another.

Command Line Parsing To parse a command line means to look at each part of the command line and convert it into something that the computer can execute. Since there variations in how different shells parse a command line, it can be assumed that the shell in question is generic. When a user enters a command line at the prompt, the shell begins by analyzing the command line. The shell will break the command line down into small indivisible pieces called tokens (sometimes they are referred to as atomic).

Command Line Parsing Each token is then analyzed in terms of its relationship with the other tokens. This is similar to the human examination of an English sentence. If a noun is present, but no verb, the sentence is deemed incomplete. The shell behaves in much the same matter. It doesn't only check for missing bits, it also makes sure that what is there is in correct order. The shell may have to examine a command line more than once to collect all of the tokens. Each examination is called a pass. The reason for multiple passes is that command lines can be quite complicated, there can be all kinds of substitutions that need to be made.

Command Line Parsing On each pass the shell will make a required substitution and then collect the available tokens. Since the substitutions can be nested (substitutions containing substitutions), the shell may require several passes to collect all of the tokens. As stated above, if at this point in the process the shell determines that the grammar of the command line is incorrect, an error is displayed to the user, or else the command is executed. While the actual order in which the tokens are gathered is interesting, it is beyond the scope of this course. Where required (such as aliases) the order of some of the parsing procedure will be presented.

Command Line Parsing There are two types of arguments, OPTIONS and PARAMETERS. Options come right after the command name and consist of a – (minus sign character) followed by a letter. Parameters come after the options. The example : ls –l file1 file2 file3

Review Shell syntax Shell Variables One of the ways the shell lets you customize your working environment is by using shell variables. A shell variable is an item, known by a name, that represents a value of some type. As the term “variable” implies, the value of a shell variable can be changed. There are two types of shell variables. First, there are variables that act as off/on switches. Second, there are variables that store a particular value as a string of characters.

Review Shell syntax Shell Set Command Debugging part of a script: set -x # activate debugging # your commands go here... set +x # stop debugging

Review Shell syntax Shell Set Command set -A is Korn Shell (ksh) specific (not available in Bash or POSIX SH) and it initializes an array with the specified value(s). $ set -A COLORS "red" "green" "blue" $ print ${COLORS[0]} red $ print ${COLORS[1]} green $ print ${COLORS[2]} blue

Review Shell syntax $# - Number of positional parameters $! - Background PID $? - Return value $$ - Process PID $ - Provides the content of a variable ($NUMBER) $0, $1, $2, $3 … - This syntax represents the positional parameters on the command line../printnum.sh 4 exit 0 – The return values is a number from 0 to 255. A value of zero (0) indicates a normal exit. exit 1 - Indicates a failure occurred.

Review shell syntax “ “ - Double quotes. Removes special meaning of all enclosed characters, except $, `, “, and \. Example: print “The price is $Price.\n”; (interpolation) ‘ ’ - Literal quotes. Removes the special meaning of all enclosed characters. A single quote cannot appear within single quotes because a single quote denotes the end of the string. ` ` - Single Back-Tic quotes. Used for command substitution. Example: echo The date is `date` (interpolation) LINES=`wc -l $ENTRY | cut -c 1-7` LISTING=`ls -l | cut -f 9`

Review Command Structure if [ -d "$1" ] then action statement fi wc –l - Word count with –l (line option). Print the new line counts ~ - Tilde (~ means /home/dandrear) for name in * do action statements done

Review Command Structure while [ condition] do action statement(s) done if [ condition ] then action statement(s) fi

Review Command Structure for name in * do action statements done Example: while [ "$1" != "" ] do # Store the value zero (0) in the variable size. $size = 0 done

Review Command Structure Examples: if [ $# –ne 1 ] then echo “Please enter a command line argument” fi logfile="/var/adm/messages" foreach mon in Sun Mon Tue Wed Thu Fri Sat do grep $mon $logfile > $logfile.$mon end

Next Weeks Lab Assignment Review Lab Assignment 2-1 Simple Shell scripting. Lab assignments should be recorded on cs.franklin.edu (Einstein) machine in your “~/itec400/homework” directory. Demonstrate how to create a file using the “vi” editor. Execute printnum.sh and maxlines.sh scripts on the cs.franklin.edu machine. Lab Assignment 2-1 will be complemented with script logic. Script logic will be utilized to jump start the lab assignment. It contains script logic, 70% percent of the needed coding, and helpful hints to assist your programming skills. In addition to script logic, you will receive a Shell and Perl Commands Quick Reference document in .

Break Out Problems 1. 1.Program statement (#!/bin/ksh) 2. 2.less 3. 3.ps –ef | wc –l 4. 4.who | awk ‘{print $1}’ | sort –u | wc –l 5. 5.ps –ef | awk ‘{print $1}’ |sort –u | wc –l 6. 6.find / ex 7. 7.ps –ef | awk ‘{print $9, $1}’ 8. 8.Shell language syntax: $# 9. 9.Shell language command: for name in * Shell language command: NUMBER=$(($NUMBER - 1)) 11. Shell variable: PATH

Upcoming Deadlines Lab Assignment 1-1, Obtain a Proctor for Exams, due May 12, Lab Assignment 1-2, Install VMware and Knoppix Virtual Machine, due May 5, 2013 Lab Assignment 1-3, Introduction to Linux, due January 5, 2013 Lab Assignment 2-1, Simple Shell Scripting, due May 19, Lab Assignment 3-1, Advanced Scripting, due May 26, Read Chapters 1 and 2 in your text book, Essential System Administration. Read Module One listed under the course Web site

Lab assistance, questions, and chat time Questions? Comments? Concerns? After each Franklin Live session, I will remain on the session to provide assistance unless otherwise indicated.

Have a good week