Linux/Unix Program 1, Computer Programming, Programming Languages

**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: 2/2/2012 2:11:48 PM | Location : United States







Related Discussions:- Linux/Unix Program 1, Computer Programming, Assignment Help, Ask Question on Linux/Unix Program 1, Computer Programming, Get Answer, Expert's Help, Linux/Unix Program 1, Computer Programming Discussions

Write discussion on Linux/Unix Program 1, Computer Programming
Your posts are moderated
Related Questions
Objective: In a programming language of your choice, write an intelligent agent able to play block Dominoes against a player. Together with this assignment you will find two pa

Objectives: Create an applet, Use methods from the Graphics class , Use the Color class General Instructions: The java class that need to be imported into this assignm

Question 1: a) Assume that B is an array of 50 words; write a code which will place the smallest integer of array B in register AX. b) Write a small code (only three instr

I need help for C# XNA 2Dimension Game Development. I am gonna send the question and my solution(incomplete). I need you to complete it. Can you help me about that. I have 6-7 days

UNIX Operating System 1. Explain all the layers present in a UNIX Architecture? List and explain each of them. 2. Describe the term Inter-Process Communication. What are var

I''m doing a project for class in college and im supposed to use today''s date and figure out how old i am in months, days, minutes, and seconds. My question is what is the beset

Hi I have an assignment for prolog languagle is it possible to get help

1. CMP and SUB CMP is used for comparing 2 registers by subtraction them from one another, but answer is not saved, whereas SUB subtracts 2 registers and saves the answer.

Expertsmind brings you  unique  solution in java assignments Just in Time Compiler In processing, just-in-time system (JIT), also known as energetic interpretation, is a m

Using the concept of structures, write a program to assign passenger seats in an airplane. Assume a small airplane with seats numbered as follows: 1 A B C D 2 A B C D 3 A