Sponsored Content
Full Discussion: Display file
Top Forums Programming Display file Post 302420366 by Praveen_218 on Tuesday 11th of May 2010 11:29:49 AM
Old 05-11-2010
Use and build from this small code itself ...

Code:
/*
** mydirDisplay.c
*/

#include <stdio.h>
#include <sys/types.h>
#include <dirent.h>

int
main(int argc, char *argv[])
{
   struct dirent *ent;
   DIR *dir;

   if (argc == 2) {
       if ((dir = opendir(argv[1]))) {
           while((ent = readdir(dir)) != NULL)
               fprintf(stdout, "%s\n", ent->d_name);
       } else
           fprintf(stderr, "Error opening directory %s\n", argv[1]);
   }

   return 0;
}


What this code does it that it takes the command line argument as the input directory and opens the same using opendir() system call; on sucess of this sys call it reads the directory entaties using readdir() syscall and prints the same on the stdout untill it encounters NULL.

Now what you need to do is run the following command on your Linux system prompt:

$ gcc mydirDisplay.c -o myls

and
$ ./myls <some directory Path>

You may also put it at either /bin directory, if you have root access, or in any directory but add the path to your environmental PATH variable; and this becomes your command.

Do add features like other swtiches of the ls command (e.g. -l, -a etc...) and instead of depending on the argc, argv only, try using getopt() ... look at the man pages of getopt() and also improve the display fprintf(stdout, ...) to look like what 'ls' prints on the stdout as a task for you. Let me know if you have any other queries.

Last edited by Praveen_218; 05-11-2010 at 12:43 PM..
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Display File

I have a file xx like this abc abcd abc abcd abcd efgh ijkl mnop qrst uv wxyz Now I want to search for "abcd". After the last found, it will display the remaining of the file. So here I am expecting something like abcd efgh ijkl mnop qrst uv wxyz (2 Replies)
Discussion started by: joy_deep
2 Replies

2. Shell Programming and Scripting

Display File

I have a file xx like this abc abcd abc abcd abcd efgh ijkl mnop qrst uv wxyz Now I want to search for "abcd". After the last found, it will display the remaining of the file. So here I am expecting something like abcd efgh ijkl mnop qrst uv wxyz (5 Replies)
Discussion started by: joy_deep
5 Replies

3. Shell Programming and Scripting

Grep pattern from different file and display if it exists in the required file

Hi, I have two files say xxx.txt and yyy.txt. xxx.txt is with list of patterns within double quotes. Eg. "this is the line1" "this is the line2" The yyy.txt with lot of lines. eg: "This is a test message which contains rubbish information just to fill the page which is of no use. this is... (3 Replies)
Discussion started by: abinash
3 Replies

4. Shell Programming and Scripting

Grep a pattern given in one file at other file and display its corresponding contents as output.

***************************************** Right now i have this current system. I have two files say xxx.txt and yyy.txt. xxx.txt is with list of patterns within double quotes. Eg. "this is the line1" "this is the line2" The yyy.txt with lot of lines. eg: "This is a test message which... (7 Replies)
Discussion started by: abinash
7 Replies

5. Homework & Coursework Questions

Display file name

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: I have a directory called "Month" which has 12 files named on months. /home/months> touch Jan Feb Mar Apr May... (6 Replies)
Discussion started by: manishdivs
6 Replies

6. Shell Programming and Scripting

adding rows of a file and display in another file

How to add these all ( 1 1 0 1 1 0 1 0 0 0 1 5 8 0 12 10 25) in the script and How to calculate the GPA?? :wall: For example a course record file can be like this: COURSE NAME: Operating Systems CREDITS: 4 123456 1 1 0 1 1 0 1 0 0 0 1 5 8 0 12 10 25 243567 0 1 1 0 1 1 0 1 0 0 0 7 9 12 15 17 15... (1 Reply)
Discussion started by: poonam29
1 Replies

7. Homework & Coursework Questions

adding rows of a file and display in another file

How to add these all ( 1 1 0 1 1 0 1 0 0 0 1 5 8 0 12 10 25) in the script and How to calculate the GPA?? :wall: For example a course record file can be like this: COURSE NAME: Operating Systems CREDITS: 4 123456 1 1 0 1 1 0 1 0 0 0 1 5 8 0 12 10 25 243567 0 1 1 0 1 1 0 1 0 0 0 7 9 12 15 17 15... (1 Reply)
Discussion started by: poonam29
1 Replies

8. Shell Programming and Scripting

File Name needs to display

I am new to shell scripting plz help me to get solution for below requirement - If name.sh file is present, message will be displayed as “name.sh is present” else "name.sh is not present" I have tested below script but getting error. #!/bin/ksh file_found=`ls name.sh` found=`echo $?` if... (6 Replies)
Discussion started by: rahulbahulekar
6 Replies

9. Shell Programming and Scripting

Display file date after grepping a string in the file

Hi All, I need to recursively grep several folders for a MAC address and display the results with the date of the file name at the start. Even better would be if the final results were displayed chronologically so the newest file is always at the end. Oldest at the top, regardless of what... (8 Replies)
Discussion started by: quemalr
8 Replies
DIRECTORY(3)						     Library Functions Manual						      DIRECTORY(3)

NAME
opendir, readdir, telldir, seekdir, rewinddir, closedir - directory operations SYNOPSIS
#include <sys/types.h> #include <sys/dir.h> DIR *opendir(filename) char *filename; struct direct *readdir(dirp) DIR *dirp; long telldir(dirp) DIR *dirp; seekdir(dirp, loc) DIR *dirp; long loc; rewinddir(dirp) DIR *dirp; closedir(dirp) DIR *dirp; DESCRIPTION
Opendir opens the directory named by filename and associates a directory stream with it. Opendir returns a pointer to be used to identify the directory stream in subsequent operations. The pointer NULL is returned if filename cannot be accessed, or if it cannot malloc(3) enough memory to hold the whole thing. Readdir returns a pointer to the next directory entry. It returns NULL upon reaching the end of the directory or detecting an invalid seekdir operation. Telldir returns the current location associated with the named directory stream. Seekdir sets the position of the next readdir operation on the directory stream. The new position reverts to the one associated with the directory stream when the telldir operation was performed. Values returned by telldir are good only for the lifetime of the DIR pointer from which they are derived. If the directory is closed and then reopened, the telldir value may be invalidated due to undetected direc- tory compaction. It is safe to use a previous telldir value immediately after a call to opendir and before any calls to readdir. Rewinddir resets the position of the named directory stream to the beginning of the directory. Closedir closes the named directory stream and frees the structure associated with the DIR pointer. Sample code which searchs a directory for entry ``name'' is: len = strlen(name); dirp = opendir("."); for (dp = readdir(dirp); dp != NULL; dp = readdir(dirp)) if (dp->d_namlen == len && !strcmp(dp->d_name, name)) { closedir(dirp); return FOUND; } closedir(dirp); return NOT_FOUND; SEE ALSO
open(2), close(2), read(2), lseek(2), dir(5) 4.2 Berkeley Distribution September 24, 1985 DIRECTORY(3)
All times are GMT -4. The time now is 01:17 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy