Program accepts a path to a directory

Assignment Help Programming Languages
Reference no: EM131030604

Run these commands to get the assignment:

cd ~/unix
cp ~parson/unix/shell3_2016.problem.zip shell3_2016.problem.zip unzip shell3_2016.problem.zip
cd ./shell3_2016

Read the README.txt file for all of your instructions and follow them.
Turn it in via make turnitin to avoid the 10% per-late-day penalty.

README.txt:

# shell3_2016.sh -- D. Parson solution to assignment 3, CSC 352 Unix
# Spring 2016. This program accepts a path to a DIRECTORY as its first
# command line argument, followed by one or more string PATTERNs
# as the remaining command line arguments.
#
# It must verify that it has at least 2 initial command line arguments
# (the DIRECTORY and at least one PATTERN), and that the DIRECTORY is
# in fact a directory. If any of these conditions fails, report an error
# TO STANDARD ERROR and exits the script with an exit status of 1.
# Otherwise proceed:
#
# For each string pattern, it calls a shell function search() which
# you must write, that does the following:

# search() -- accept the DIRECTORY and current PATTERN as function arguments.
# You can pass any additional arguments that you decide are necessary.
# Find all of the *regular files* within and below the DIRECTORY
# For each of those regular files
# Run the file command and egrep for the pattern.
# If the output from the file command satisfies the
# egrep pattern, then:
# Add 1 to a counter for the number of file types matching PATTERN.
# Accumulate the number of lines in the file itself
# in a variable. Do NOT accumulate the number of lines
# written by the file command, which is always 1.
# Accumulate the number of lines in the file.
# Accumulate the number of words in the file itself in a
# different variable.
# Accumulate the number of characters in the file itself in a
# third variable.
# The search() function returns these four counters to the main
# shell code that calls the function.
# The main code must print the results in a format in the
# EXACT format of my .ref reference files, with NO EXTRA OR
# MISSING CHARACTERS. You will lose a minimum of 10 points for any
# formatting diffs, because these defeat the ability to run automated
# tests. The EXACT format of your output statement lines must be:
#
# PATTERN NF files, NL lines, NW words, NC chars
#

# Do not print the leading "# " above; PATTERN is the
# actual pattern being checked; NF is the integer number of files
# matching the pattern; NL is the integer numbers of lines,
# NW is the number of words, and NC is the number of characters,
# each separated by exact one space, with no trailing spaces.
# Consult my reference file AdvDataStructures.ref to see the format.
# My "make test" runs your shell script against ~parson/AdvDataStructures
# for automated testing. It also does some test runs for error conditions.
#
# Here are 2 examples of using the file and egrep command together:
#
# file * | egrep directory > /dev/null ; echo $?
# 0
#
# file * | egrep hamburger > /dev/null ; echo $?
# 1
#
# In the first example, the output from the file command did
# contain one or more lines with the PATTERN "directory", so
# egrep succeeded with an exit status of 0; the egrep command above
# discards the actual lines of text because we don't need those.
# In the second example, the pattern did not match, hence the
# egrep exit status that is non-0. Note that you will be checking
# only *regular files* under DIRECTORY found using the find command,
# not "file *".
#
# You can use last year's shell3.sh in ~parson/unix/shell3.solution.zip
# as a temp[late for writing your search() function.
#
# This assignment is due via "make turnitin" by end of April 16.
#
# After reporting one PATTERN's results, the main code loops to the next
# PATTERN (if any) and calls search() again, until it has run through
# all PATTERNs on its command line. It then terminates with an exit
# status of 0.
#
# NOTE: In addition to using && and || to connect tests in a shell
# script, you can use ! with the [ ] brackets to invert the test.
# Examples:
#
# [ -f .. ] ; echo $?
# 1
# [ ! -f .. ] ; echo $?
# 0

Reference no: EM131030604

Questions Cloud

Explain the circumstances of the crime : Explain the circumstances of the crime. Describe the investigative process. Describe the circumstances of the arrest. Describe the process beginning with arraignment through sentencing.
Analyze the yelp 2016 challenge dataset : You must use Hadoop technologies to analyze the Yelp 2016 challenge dataset - Summarize the number of reviews by US city, by business category.
Determine the final temperature of the air : Determine the final temperature of the air. Neglect the energy stored in the paddle wheel.
Determine the amount of heat loss : A piston-cylinder device contains 25 ft3 of nitrogen at 40 psia and 700°F. Nitrogen is now allowed to cool at constant pressure until the temperature drops to 200°F. Using specific heats at the average temperature, determine the amount of heat los..
Program accepts a path to a directory : CSC 352, Unix Systems, Spring 2016, Run the file command and egrep for the pattern - This program accepts a path to a DIRECTORY as its first and command line argument, followed by one or more string PATTERNs
Identify all the possible variables and parameters : Describe the structure of the formula you would like to propose for management and identify all the possible variables and parameters which may play a role in such a formula.
Discuss the advantages and disadvantages of cloud computing : To develop knowledge and understanding of cloud computing. Discuss the advantages and disadvantages of cloud computing. Identifythe key ideas from the materials.
Prepare advertisement for position that complies federal law : Prepare an advertisement for that position that complies with federal law. This advertisement must be detailed. The minimum length of your job description must be 300 words (approximately three-fourths of a page).
Determine the amount of boundary work done : A piston-cylinder device contains 3 ft3 of air at 60 psia and 150°F. Heat is transferred to the air in the amount of 40 Btu as the air expands isothermally. Determine the amount of boundary work done during this process.

Reviews

Write a Review

Programming Languages Questions & Answers

  Write a program that replies either leap or not a leap year

Write a program that replies either Leap Year or Not a Leap Year, given a year. It is a leap year if the year is divisible by 4 but not by 100 (for example, 1796 is a leap year because it is divisible by 4 but not by 100).

  Based on the keston 2013 article in the electronic reserve

write a 200- to 300-word short-answer response to the followingbased on the keston 2013 article in the electronic

  Create a class called dateprofile

Assignment - Computer Dating, Create a class called DateProfile that has the following private instance members: gender - a char, the gender of the applicant ('M' or 'F')

  Design application that plays a guessing game with numbers

Design and implement an application that plays a guessing game with numbers. The program should generate a random number between 1 and 100 (inclusive), then repeatedly prompt the user to guess the number

  Calculate resistance value

Develop a PROLOG program that prompts the user for the colors of Band 1, Band 2, Band 3, and Band 4 and then displays the resistance in Kilo-ohms.

  Create a program that uses the same formula

Create a program that uses the same formula above to output the result; this time, however, prompt the user for the values a, b, x, and y.

  Write program asks user to enter temperature

Write a program that asks the user to enter a temperature, and then shows all the substances that will freeze at that temperature and all the substances that will boil at that temperature.

  Using the irvine32 library functions

Create 32 random points which have (x, y) co-ordinates

  Create a program to compute car-s miles-per-gallon

Create a program which ask's the user for number of miles driven and gallons of gas used. It must compute the car's miles-per-gallon and show the result on the screen.

  Create a class for performing arithmetic with fractions

Create a class called Rational for performing arithmetic with fractions. Write a program to test your class. 1/2+2/3+3/4.......+98/99+99/100.Use integer variables to represent the private data of the class

  Create a user interface that uses the gridlayout manager

Define and compile the following two classes that will represent seats in a stadium and When creating a new Stadium, the constructor above will fill a 27x35 two-dimensional array of Seat objects, where each Seat has a number, row and section.

  Modify the inventory program to include an add button

Modify the Inventory Program to include an add button, a delete button, and a modify button on the GUI. These buttons should allow the user to perform the corresponding actions on the item name, the number of units in stock, and the price of each ..

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd