Write a program to find files-unix, C/C++ Programming

This programming assignment is for use in the LINUX/UNIX environment!!

Introduction:

System administration often requires custom written programs and tools. One problem a system admin faces is deleting oversized files on the system.

Assignment Description:

This assignment is to write a program to find files that exceed a given threshold in size.  This tool will allow the system admin to find those files that are dominating the usage of the file system.

Program Requirements:

1)  The program will take 2 arguments, an options argument and a size argument.

2)  The size argument is a number representing the threshold size.  For example, if 10 is entered, it will find all files larger than 10 megabytes.

3)  The options are to be as follows:

      1.  -f  (this option will display the file name

      2.  -s (this option will calculate the summary of all file sizes)

      3.  -t  (this option will display the total summary only.

    These arguments may be entered in single option fashion or multiple.  Example:

  $filesize -sf 10

  -This will display all files over 10 megabytes and include a summary of all files sizes.

   The output is as follows:

    80 /home/smith/Tools/decode.tgz

    28 /home/smith/Tools/parse_code.a

   **NOTE: that decode.tgz is 80 MB and parse_code.a is 28 MB.

4)  The program will take the file list in as a stream from the standard input.  The "find" command will be used to create the stream, but no options will be allowed to be used.

    The "find" command is used here as a simplifying element of the program.

5)  The program will use the "stat" system call to filter out dir/block/link/socket files and only return "regular" files.

6)  The program will use the "stat" system call to get the file size.

 

SAMPLE CODE THAT CAN BE USED (You Don't HAVE to use this):

For POSIX environment:

struct stat sb;

int result = 1; /* result */

if (msg) msg[0] = '\0';

if (stat(FN,&sb) == 0) {

     if      (S_ISDIR (sb)) result = 0;

     else if (S_ISFIFO(sb)) result = 0;

     else if (S_ISBLK (sb)) result = 0;

     else if (S_ISSOCK(sb)) result = 0;

   }

}

Posted Date: 3/26/2013 2:41:28 AM | Location : United States







Related Discussions:- Write a program to find files-unix, Assignment Help, Ask Question on Write a program to find files-unix, Get Answer, Expert's Help, Write a program to find files-unix Discussions

Write discussion on Write a program to find files-unix
Your posts are moderated
Related Questions
how to compare one file with another file. comparison should be like first line of first file compare every line of second file until it gets a blank line starting from the top and


Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can b

1. The management of a company would like to determine the median annual salary of its employees.Write a pascal program that display the number of employees and their median salary

A: This is a name that acts as an alias, or alternative name, for a beforehand defined variable or an object. prepending variable along with "&" symbol makes it as reference. fo

What is a newline escape sequence? - A newline escape sequence is signified by the \n character. - It is used to insert a new line whereas displaying the output data. - T

Implement multiple stacks in a single dimensional array. Write algorithms for various stack operations for them.

3 kilograms of peebles are needed for converting an area of 1 square meter.the rate of the peeble is 5 per kilogram

Ques.Implement a c/c++ program to find a shortest path between two nodes in a network?network should be taken as an adjacency matrix.

Byteland county is very famous for luminous jewels. Luminous jewels are used in making beautiful necklaces. A necklace consists of various luminous jewels of particular colour. Nec