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

Assignment Help:

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;

   }

}


Related Discussions:- Write a program to find files-unix

Define multi file program, Define Multi File Program? While writing lar...

Define Multi File Program? While writing large programs we must divide programs up into modules. These would be separate source files and the main() function would be in one fi

Define bitwise left shift and right shift operators, Define Bitwise Left Sh...

Define Bitwise Left Shift and Right Shift Operators: >? The bitwise shift operators shift their first operand right (>>) or left ( // Illustration of the bitwise right shi

Determine the current flowing by resistor, For the circuit shown in Figure,...

For the circuit shown in Figure, verify the p.d. across resistor R3. If the total resistance of the circuit is 100Ω, verify the current flowing by resistor R1. Find also the

Intro to C++ Lab Help, I have a very confusing assignment and I''m struggli...

I have a very confusing assignment and I''m struggling to find the right place to begin or how to break the problem down.

Program is to define a class as student, Program is to define a class as st...

Program is to define a class as student: Program is to define a class as student and display the records specific depending upon the number class student  {  private:

Area under curve, Write a program to find the area under the curve y = f(x)...

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.   #include float start_poin

Explain looping statements, Looping Statements The statements usually u...

Looping Statements The statements usually used for looping are for, do-while, while. The goto statement can be used for looping, but its use is generally avoided as it leads to

Operator precedence and associatively, Op e r a t o r P r e c e d ...

Op e r a t o r P r e c e d e n c e a n d A s s o c i a t i v e l y : T h e op e r a t o r p r e c e d e n c e a n d i

Write Your Message!

Captcha
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