If you are running a Perl script there is no need to spawn a shell to do this, Perl has a number of ways (as always) of doing this, you can use a glob to get the values
Or you could open the directory and read the contents.
The glob is obviously easier to use, however if you need to do more complex processing than just printing the filenames the opendir, readdir , closedir approach gives you more flexibility.
FOR: Windows NT 4
I want perl to read a directory. there is suposed to be two files in the folder ( file1.ini and file2.ini ) and i want perl to print "Files present" or "Files NOT present" to a text document ( report.txt )
how do i do it.? (2 Replies)
At the moment I do not know anything UNIX script :rolleyes:
but i need to make script that prints the content of the archives
(of text) that are deposited in a directory and Later erases these
archives, leaving the directory emptiness
It would be like repository for print
please... (9 Replies)
Hi all,
I have the following question. Considder that in the directory /code the script remove.pl exists. What i want is to run this script and remove some files that exist in the directory /dir/tmp. I use the below code but it does not work.
system("cd /dir/code");
system("rm FileName");
... (6 Replies)
Suppose u have two files
one file
>hi|23433|sp|he is RAJ<space>>hi|23333|df|He is HUMAN<space>>hi|222|gi|howru|just
WOWHEISWONDERFUL
>hi|25559|gs|heisANUJ<space>>hi|2232|sp|he is fool
SKSIKSIKSLKSSLLS
Another file
HUMAN
so output wil be ...if the list contain HUMAN only take it... (1 Reply)
Hi I have this code to print the current directory using Perl
use Cwd qw(abs_path);
my $path = abs_path($0);
print "$path\n";
But it is displaying my perl source code file along with the directory.
like this
C:\Perl\duration.pl
But I want it only to display this... (1 Reply)
Hello All
I am implementing my task in Perl and i found an issue.
What i want to do is to remove files from the directory which were made 20 days back using Perl script (9 Replies)
Hi All,
I have written one program to print the files which are not updated in the specified directory in .Dat file. If I am executing the same command in the command prompt its working fine but if I am executing in shell script it's not working fine. Please correct if any thing wrong in the... (3 Replies)
Given a directory containing say a few thousand files,
please output a list of all the names of the files in the directory that are exactly the same, i.e. have the same contents.
func(a_directory_name) output -> {“matches”: , ... ]}
e.g. func(“/home/my/files”) where the directory... (7 Replies)
Hi All,
I hope somebody would be able to help me.
I would need to search a string coming from a file, example file.txt:
dog
cat
goat
horse
fish
For every string, I would need to know if there are any files inside a directory(recursively) that contains the string regardless of case.... (9 Replies)
I have a directory of files, I can show the number of lines in each file and order them from lowest to highest with:
wc -l *|sort
15263 Image.txt
16401 reference.txt
40459 richtexteditor.txt
How can I also print the number of unique lines in each file?
15263 1401 Image.txt
16401... (15 Replies)
Discussion started by: spacegoose
15 Replies
LEARN ABOUT BSD
opendir
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)