Advanced File Processing

Slides:



Advertisements
Similar presentations
A Guide to Unix Using Linux Fourth Edition
Advertisements

A Guide to Unix Using Linux Fourth Edition
The Command Line, Part II, Pine, and Pico CMSC 121 Introduction to UNIX Much of the material in these slides was taken from Dan Hood’s CMSC 121 Lecture.
Linux+ Guide to Linux Certification, Second Edition
CS 497C – Introduction to UNIX Lecture 23: - Simple Filters Chin-Chih Chang
Guide To UNIX Using Linux Third Edition
T UTORIAL OF U NIX C OMMAND & SHELL SCRIPT S 5027 Professor: Dr. Shu-Ching Chen TA: Samira Pouyanfar Spring 2015.
Guide To UNIX Using Linux Third Edition
Guide To UNIX Using Linux Third Edition
Guide to Linux Installation and Administration, 2e1 Chapter 6 Using the Shell and Text Files.
Lecture 02CS311 – Operating Systems 1 1 CS311 – Lecture 02 Outline UNIX/Linux features – Redirection – pipes – Terminating a command – Running program.
Grep, comm, and uniq. The grep Command The grep command allows a user to search for specific text inside a file. The grep command will find all occurrences.
CSCI 330 T HE UNIX S YSTEM File operations. OPERATIONS ON REGULAR FILES 2 CSCI The UNIX System Create Edit Display Contents Display Contents Print.
Unix Filters Text processing utilities. Filters Filter commands – Unix commands that serve dual purposes: –standalone –used with other commands and pipes.
UNIX Filters.
Shell Script Examples.
Linux Commands LINUX COMMANDS.
CS 141 Labs are mandatory. Attendance will be taken in each lab. Make account on moodle. Projects will be submitted via moodle.
Chapter 4: UNIX File Processing Input and Output.
Chapter Seven Advanced Shell Programming. 2 Lesson A Developing a Fully Featured Program.
Advanced Shell Programming. 2 Objectives Use techniques to ensure a script is employing the correct shell Set the default shell Configure Bash login and.
Linux environment ● Graphical interface – X-window + window manager ● Text interface – terminal + shell.
Introduction to Shell Script Programming
Agenda User Profile File (.profile) –Keyword Shell Variables Linux (Unix) filters –Purpose –Commands: grep, sort, awk cut, tr, wc, spell.
Chapter Four UNIX File Processing. 2 Lesson A Extracting Information from Files.
Guide To UNIX Using Linux Fourth Edition
LIN 6932 Unix Lecture 6 Hana Filip. LIN 6932 HW6 - Part II solutions posted on my website see syllabus.
A Guide to Unix Using Linux Fourth Edition
Introduction to Unix (CA263) File Processing. Guide to UNIX Using Linux, Third Edition 2 Objectives Explain UNIX and Linux file processing Use basic file.
Unix programming Term: III B.Tech II semester Unit-II PPT Slides Text Books: (1)unix the ultimate guide by Sumitabha Das (2)Advanced programming.
Chapter Three The UNIX Editors. 2 Lesson A The vi Editor.
Jozef Goetz, expanded by Jozef Goetz, 2009 Credits: Parts of the slides are based on slides created by UNIX textbook authors, Syed M. Sarwar, Robert.
Analyzing Data For Effective Decision Making Chapter 3.
Linux+ Guide to Linux Certification Chapter Four Exploring Linux Filesystems.
Linux+ Guide to Linux Certification, Third Edition
System Administration Introduction to Unix Session 2 – Fri 02 Nov 2007 Reference:  chapter 1, The Unix Programming Environment, Kernighan & Pike, ISBN.
Week 3 Exploring Linux Filesystems. Objectives  Understand and navigate the Linux directory structure using relative and absolute pathnames  Describe.
Advanced File Processing. 2 Objectives Use the pipe operator to redirect the output of one command to another command Use the grep command to search for.
UNIX Shell Script (1) Dr. Tran, Van Hoai Faculty of Computer Science and Engineering HCMC Uni. of Technology
Chapter Five Advanced File Processing Guide To UNIX Using Linux Fourth Edition Chapter 5 Unix (34 slides)1 CTEC 110.
Chapter Five Advanced File Processing. 2 Objectives Use the pipe operator to redirect the output of one command to another command Use the grep command.
Module 6 – Redirections, Pipes and Power Tools.. STDin 0 STDout 1 STDerr 2 Redirections.
Agenda Regular Expressions (Appendix A in Text) –Definition / Purpose –Commands that Use Regular Expressions –Using Regular Expressions –Using the Replacement.
Introduction to Unix – CS 21 Lecture 12. Lecture Overview A few more bash programming tricks The here document Trapping signals in bash cut and tr sed.
Review Chapters 5 thru 8. 2 Two Groups of Commands Select commands Manipulate and Format commands.
Introduction to Unix (CA263) File Processing (continued) By Tariq Ibn Aziz.
Chapter Five Advanced File Processing. 2 Lesson A Selecting, Manipulating, and Formatting Information.
Chapter Three The UNIX Editors.
Chapter Six Introduction to Shell Script Programming.
Lesson 3-Touring Utilities and System Features. Overview Employing fundamental utilities. Linux terminal sessions. Managing input and output. Using special.
– Introduction to the Shell 1/21/2016 Introduction to the Shell – Session Introduction to the Shell – Session 3 · Job control · Start,
Linux+ Guide to Linux Certification, Second Edition Chapter 4 Exploring Linux Filesystems.
ORAFACT Text Processing. ORAFACT Searching Inside Files grep - searches for patterns within files grep [options] [[-e] pattern] filename [...] -n shows.
Lesson 6-Using Utilities to Accomplish Complex Tasks.
Learning Unix/Linux Based on slides from: Eric Bishop.
Filters and Utilities. Notes: This is a simple overview of the filtering capability Some of these commands are very powerful ▫Only showing some of the.
SIMPLE FILTERS. CONTENTS Filters – definition To format text – pr Pick lines from the beginning – head Pick lines from the end – tail Extract characters.
CSE 303 Concepts and Tools for Software Development Richard C. Davis UW CSE – 10/9/2006 Lecture 6 – String Processing.
Tutorial of Unix Command & shell scriptS 5027
Lesson 5-Exploring Utilities
Some Linux Commands.
Chapter 6 Filters.
INTRODUCTION TO UNIX: The Shell Command Interface
Tutorial of Unix Command & shell scriptS 5027
Tutorial of Unix Command & shell scriptS 5027
Guide To UNIX Using Linux Third Edition
Tutorial of Unix Command & shell scriptS 5027
Unix Talk #2 (sed).
Chapter Four UNIX File Processing.
More advanced BASH usage
Presentation transcript:

Advanced File Processing Chapter Five Advanced File Processing

Selecting, Manipulating, and Formatting Information Lesson A Selecting, Manipulating, and Formatting Information

Objectives Use the pipe operator to redirect the output of one command to another command Use the grep command to search for a specified pattern in a file Use the uniq command to remove duplicate lines from a file

Objectives Use the comm and diff commands to compare two files Use the wc command to count words, characters and lines in a file Use the manipulate and format commands: sed, tr, and pr

Advancing Your File Processing Skills The select commands, which extract data

Advancing Your File Processing Skills The manipulation and transformation commands alter and transform into useful and appealing formats data

Using the Select Commands Select commands: grep, diff, uniq, comm, wc Using Pipes – The pipe operator (|) redirects the output of one command to the input of another command An example would be to redirect the output of the ls command to the more command The pipe operator can connect several commands on the same command line

Using Pipes Using pipe operators and connecting commands is useful when viewing directory information

Using the grep Command Used to search for a specific pattern in a file, such as a word or phrase grep’s options and wildcard support allow for powerful search operations You can increase grep’s usefulness by combining with other commands, such as head or tail

Using the grep Command grep can take input from other commands and also be directed to provide input for other commands

Using the uniq Command Removes duplicate lines from a file It compares only consecutive lines, therefore uniq requires sorted input Uniq has an option that allows you to generate output that contains a copy of each line that has a duplicate

Using the comm Command Used to identify duplicate lines in sorted files Unlike uniq, it does not remove duplicates, and it works with two files rather than one It compares lines common to file1 and file2, and produces three column output Column one contains lines found only in file1 Column two contains lines found only in file2 Column three contains lines found in both files

Using the diff Command Attempts to determine the minimal changes needed to convert file1 to file2 The output displays the line(s) that differ The associated codes in the output indicate that in order for the files to match, specific lines must be added or deleted

Using the wc Command Used to count the number of lines, words, and bytes or characters in text files You may specify all three options in one issuance of the command If you don’t specify any options, you see counts of lines, words, and characters (in that order)

Using the wc Command The options for the wc command: –l for lines –w for words –c for characters

Using the Manipulate and Format Commands These commands are: sed, tr, pr Used to edit and transform the appearance of data before it is displayed or printed

Introducing sed sed is a UNIX editor that allows you to make global changes to large files Minimum requirements are an input file and a command that lets sed know what actions to apply to the file sed commands have two general forms Specify an editing command on the command line Specify a script file containing sed commands

Introducing sed The many options of sed allow you to create new files containing the specific data you specify

Translating Characters Using the tr command tr copies data from the standard input to the standard output, substituting or deleting characters specified by options and patterns The patterns are strings and the strings are sets of characters A popular use of tr is converting lowercase characters to uppercase

Using the pr Command to Format Your Output pr prints specified files on the standard output in paginated form By default, pr formats the specified files into single-column pages of 66 lines Each page has a five-line header, its latest modification date, current page, and five-line trailer consisting of blank lines

Using the pr Command to Format Your Output

Using the pr Command to Format Your Output

Lesson B Using UNIX File-Processing Tools to Create an Application

Objectives Design a new file-processing application Design and create files to implement the application Use awk to generate formatted output

Objectives Use cut, sort, and join to organize and transform selected file information Develop customized shell scripts to extract and combine file data Test individual shell scripts and combine all scripts into a final shell program

Designing a New File-Processing Application The most important phase in developing a new application is the design The design defines the information an applications needs to produce The design also defines how to organize this information into files, records, and fields, which are called logical structures

Designing Records The first task is to define the fields in the records and produce a record layout A record layout identifies each field by name and data type (numeric or nonnumeric) Design the file record to store only those fields relevant to the record’s primary purpose

Linking Files with Keys Multiple files are joined by a key – a common field that each of the linked files share Another important task in the design phase is to plan a way to join the files The flexibility to gather information from multiple files comprised of simple, short records is the essence of a relational database system. UNIX provides several commands providing this flexibility

Creating the Programmer and Project Files With the basic design complete, you now implement your application design UNIX file processing predominantly uses flat files. Working with these files is easy, because you can create and manipulate them with text editors like vi and Emacs

Formatting Output The awk command is used to prepare formatted output For the purposes of developing a new file-processing application, we will focus primarily on the printf action of the awk command

Formatting Output Awk provides a shortcut to other UNIX commands

Using a Shell Script to Implement the Application Shell scripts should contain: The commands to execute Comments to identify and explain the script so that users or programmers other than the author can understand how it works Use the pound (#) character to mark comments in a script file

Running a Shell Script You can run a shell script in virtually any shell that you have on your system The Bash shell accepts more variations in command structures that other shells Run the script by typing sh followed by the name of the script, or make the script executable and type ./ prior to the script name

Putting it all together to Produce the Report An effective way to develop applications is to combine many small scripts in a larger script file Have the last script added to the larger script print a report indicating script functions and results

Putting it all together to Produce the Report

Putting it all together to Produce the Report

Chapter Summary The UNIX file-processing commands can be organized into two categories: (1) select and (2) manipulation and transformation The uniq command removes duplicate lines from a sorted file The comm command compares lines common to file1 and file2, and produces output that shows the variances between the two The diff command attempts to determine the minimal set of changes needed to convert file1 into file2

Chapter Summary The tr command copies data read from the standard input to the standard output, substituting or deleting characters specified The se command is a file editor designed to make global changes to large files The pr command prints the standard output in pages The design of a file-processing application reflects what the application needs to produce Use record layout to identify each field by name and data type

Chapter Summary Shell programs should contain commands to execute programs and comments to identify and explain the programs. The pound (#) character denotes comments Write shell scripts in stages so that you can test each part before combining them into one script. Using small shell scripts and combining them in a final shell script file is an effective way to develop applications