
Database System Concepts
7th Edition
ISBN: 9780078022159
Author: Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher: McGraw-Hill Education
expand_more
expand_more
format_list_bulleted
Topic Video
Question
In C++
Implement a simple version of the linux grep command in C++. grep - Looks through a file, line by line, trying to find a user-specified search term in the line. If a line has the word within it, the line is printed out, otherwise it is not. Use the system calls open(), getline(), close().
Requirements (examples run from. terminal)
- Your program grep is always passed a search term and zero or more files to grep through (thus, more than one is possible). It should go through each line and see if the search term is in it; if so, the line should be printed, and if not, the line should be skipped.
- [terminal]$ ./grep ! main.cpp main2.cpp
cout << "Hello, World!";
cout << "Programming is great fun!";
- [terminal]$ ./grep ! main.cpp main2.cpp
- The matching is case sensitive. Thus, if searching for world, lines with World will not match.
- Lines can be arbitrarily long (that is, you may see many many characters before you encounter a newline character, \n). grep should work as expected even with very long lines. For this, you might want to look into the getline() library call.
- If grep is passed no command-line arguments, it should print "wgrep: searchterm [file ...]" (followed by a newline) and exit with status 1.
- [termianl]$ ./grep
wgrep searchterm [file ...]
- [termianl]$ ./grep
- If grep encounters a file that it cannot open, it should print "grep: cannot open file" (followed by a newline) and exit with status 1.
- [terminal]$ ./grep World main3.cpp
wgrep: cannot open file
- [terminal]$ ./grep World main3.cpp
- In all other cases, grep should exit with return code 0.
- If a search term, but no file, is specified, grep should work, but instead of reading from a file, grep should read from standard input.
- [terminal$ ./grep World
Hello World
Hello World
Programming is great fun!
Programming for real world problems is complex!
Programming makes the World go round
Programming makes the World go round
^C
- [terminal$ ./grep World
- For simplicity, if passed the empty string as a search string, grep can either match NO lines or match ALL lines, both are acceptable. Here is an example of returning everything.
- [terminal]$ ./grep "" main.cpp
#include <iostream>
using namespace std;
int main(){
cout << "Hello, World!";
return 0;
}
- [terminal]$ ./grep "" main.cpp
- If a search term consists of multiple words, the grep should work as follows:
- [terminal]$ ./grep "Hello, World" main.cpp
cout << "Hello, World!";
- [terminal]$ ./grep "Hello, World" main.cpp
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution
Trending nowThis is a popular solution!
Step by stepSolved in 4 steps with 16 images

Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Similar questions
- In C++arrow_forwardHW1 Instructions: Your homework must have a cover page contains homework number, your name and student id. Submit the code on word file or pdf file. Write your name and student id as comment in the code (see the example). O HW1 HW1.Program B// Name: Your name |// ID : Your university ID Busing System; using System.Collections. Generic; using System.Linq; using System. Text; using System. Threading.Tasks; 10 Bnamespace HW1 11 O references class Program 12 13 Oreferences static void Main(string[] args) Submit screenshot after running the code for each part (The screenshot must have your name and ID, see the example). CAWINDOWS\system32\cmd.exe Name: Your name ID : Your university ID MENU 1. Show grades 2. Show average 3. Max grade 4. Min grade 5. Modify a grade 6. Search by ID 0. Exit Please enter your choice: Write a menu program in C# that manages students grades for one class. The program lets the user select from a list of options, and if the input is not one of the options, reprint…arrow_forwardBefore using the ReadLine function on a StreamReader object, it's important to make sure the property's value isn't set to "true" (meaning the object has reached the end of its stream).arrow_forward
- I need help writing a program on pythonarrow_forwardComputer Science Write a C/C++ program, call it findExt, to find all files in a directory hierarchy, whose extensions are in the extension list provided as arguments to the program. Your program should print the whole pathnames of the found files. Synopsis: findExt <extension-list> [-t target-directory] When target-directory is missing, the working directory (./) will be the target directory Some sample runs: $ findExt txt pdf That is, find all files whose extensions are either txt or pdf in the directory hierarchy ./ $ findExt jpg -t $HOME //target directory is home directory That is, find all files whose extensions is jpg in the directory hierarchy $HOME Requirement: - You must use the system call nftw() that allows you to walk across a file tree. This system call will do all the recursive walk and each time it visits a file or a directory, it will call your own function (a function that you pass as a parameter).arrow_forwardIn C++, using STL algorithms create a program that allows the user to search the text file for an item. Console: Enter the command: cin>> search What ice cream flavor do you want to search for? cin>>cookies n cream cout<<"Sorry, that flavor is not available"; command: search cin>> chocolate cout<<"That flavor is available"; Provided text file: icecream.txt chocolate $15 strawberry $10 vanilla $13 rainbow $10arrow_forward
- Music App 1. practise file I/O and exception handling; 2. practise String processing. Aim: Task: Create a Java application that transcripts a simple song score sheet. The program asks user for filename of a text file that contains a simple song score sheet in this format: Sample song score sheet 1, song1.txt: #simple song with assumed time signature = 4 d1mls202s 1mld2o2 d1rimlfls 301s1f1m1rld4 Lines beginning with a hash #' is a comment line. A song contains one or more lines of musical notes, d, r, m, f, s, l, tand also o meaning "Off" or rest. Each single character note is followed by a single digit integer in [1 – 4], denoting the duration of the note in number of beats. After transcription, the program outputs the melody on the screen as well as to another text file: Melody output 1, on screen AND in melody_song1.txt: #simple song with assumed time signature Do Me So- Off- So Me Do Re Me Fa| So-- Off = 4 Do- Off- | So Fa Me Re Do--- | The default time signature is 4 beats per…arrow_forwardBefore using the ReadLine function on a StreamReader object, it's important to make sure the property's value isn't set to "true" (meaning the object has reached the end of its stream).arrow_forwardExampleTwo This program loops through fileLoop.txt, computation, and display results package charioloop; import java.util.Scanner; import java.io.*; // public class Charioloop { public static void main(String[] args) throws IOException { //Create a reference to the physical file File loopfile = new File("fileLoop.txt"); // connect a Scanner to the file Scanner getAll = new Scanner( loopfile ); int num = 0, square = 0; while(num != -1){ num = getAll.nextInt(); square = num * num ; System.out.println("The square of " + num + " is " + square); } getAll.close(); } } /* Create fileLoop.txt in I:\\Ajava\161\WPPractice\IO\charstream\charioloop My fileLoop.txt looks like this: 2 3\ 2 10 -1 Note:- Study this program and follow the given instruction and execute type the code and provide also output for this java program as soon as possible.arrow_forward
- This C++ menu-driven program on LIBRARY MANAGEMENT SYSTEM has book and student class with data members like a book no, book name, author name. Books records are stored in a binary file. A student can issue a book and deposit it within 15 days. The student is allowed to issue only one book. Student Records are stored in the binary file. The administrator can add, modify or delete records.In this project, do not use graphics to keep the program simple.arrow_forward9b_act1. Please help me answer this in python programming.arrow_forwardprogram5_3.pyWrite a program about triangles. You need two files, a module file and an executable file with a main method. Include Psudocode to explain your code. The module file (defines two functions): One function that takes the three sides of a triangle as arguments. It returns True if the sides define a right triangle and False if it doesn't. HINT: This is easiest with a Math module function. The other function must use Heron's Formula to calculate and return the area of a triangle. Learn about Heron's formula online. The main file:Prompt the user to enter the three sides (longest first) of the triangle. Use integers only. Make sure that no side is longer than the sum of the other two sides. Call the function that returns a boolean and use it to output whether the triangle is a right triangle, or not. Call the function that returns the area. Display the value returned with two decimal places. Two Example outputs Enter longest side of the triangle 14 Enter any another side of…arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education

Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON

Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education