#!/usr/local/bin/perl
#$path = perl;
#use File::stat;
use Time::localtime;
sub ExampleFiles{
$today = time;
$today -= $today % 86400;
$return_value = 0;
$mtime = (stat("$_[0]"))[9] || die "cannot stat file $!";
$size = (stat("$_[0]"))[7]; # size in bytes$
$ok = "NOT OK";
my @a = glob "mysql*.gz" ;
#my $d = ctime(stat($_)->mtime);
if( $size > 0 && $mtime >= $today )
{
$ok = "Successful";
$return_value = 1;
}
#foreach (@a) {
# if ( -e $_)
# {
# print "File found $_.\n";
# }
# else
# {
# print "No file found $_.\n";
# }
#}
print "$_[0] is $ok \n ";
return $return_value;
}
$found = 0;
opendir (DIRHNDL, "/Backup/servers/10.1.10.35") || die "Cannot open directory $!";
@filelist = readdir (DIRHNDL);
closedir (DIRHNDL);
foreach $filename ( @filelist )
{
if ($filename =~ $path)
{
$found |= ExampleFiles $filename;
}
foreach (@a) {
if ( -e $_)
{
print "File found $_.\n";
}
else
{
print "No file found $_.\n";
}
}
}
guys, please check my code above. I'm trying to write a script that will check whether the backup file is created daily or not inside the directory. If the backup file created, it will display "OK", else it will display the date of "no backup". If no data found, It will display "no backup found".
hello,
I have to check the free space on the disk that would work both on Windows and Unix platform e.g on C: \ for Windows and / on Unix. I could use Unix command 'df ' ( my windows system has Unix emulator cygwin and could run 'df ' as well).
But I'd like not to rely on system command but... (1 Reply)
Hi guys, i am new to perl. I started reading the perl documents and try to come up with some logic.
I am trying to create a script that would go into a location, search for todays files, then searches for all .txt files from today.
If todays not found, its an error
If file size is less... (26 Replies)
I have a local linux machine in which the files are dumped by a remote ubuntu server. If the process in remote server has any problem then empty files are created in local machine. Is there any way using perl script to check if the empty files are being created and delete them and then run a shell... (2 Replies)
I am working on a perl script that is used to update a list of hosts to a certain file but I am having an issue when I try to perform a check to make sure the user enters valid information. The following is what I have currently written for the script:
IPINPUT:
print "Enter IP Address: ";... (2 Replies)
The following script does pull the sender and Subject of the email but it is not seeing the attachment name. I know there is an attachment.
I line in red SHOULD pull the filename out.
this line is in the message:
Content-Disposition: attachment; filename="Picture 243.jpg"
... (1 Reply)
I am trying to read the /etc/security/limits.conf file to match with my specifications.
Specification should match below :
nofile=131072
noproc=131072
memlock=3500000
I have written a perl script to read the file:
#!/usr/bin/perl
$FILE1 = "/home/sriram/perl_scripts/limits.conf";... (2 Replies)
Hi Folks,
I have few mailids in a text file and need to check whether the mailid is in correct format or not.
If just to check whether the string is a mailid or not there is a perl module Email::Valid to do the business or we can implement our own logic.
But the mail_ids I am having is... (4 Replies)
I'm a scripting newbie and I'm trying to learn. No better way than being assigned a project.
So basically, I'm trying to come up with a script that can periodically check a URL and then notify when changes occur to the file.
So what I'm thinking is that I need to devise a PERL script that... (3 Replies)
Hello,
I need to chack if the printer is out of paper, and send message to operator.
I need to do this from perl script.
The printer have mechanism to check if it have paper. However, the cups does not report "printer out of paper" when I remove the paper, and try to print.
Is there any... (1 Reply)
Hi,
I am trying to write a script for following scenario:
I have a list of countries from where I receive files...eg. (Indonesia, Thailand, Australia...etc)
For each country, I have a list of files that they send.
IND -- a,b,c
TH -- p,q,r
AU -- x,y,z
The path for these files could... (2 Replies)
Discussion started by: neil.k
2 Replies
LEARN ABOUT PHP
stat
STAT(3) 1 STAT(3)stat - Gives information about a fileSYNOPSIS
array stat (string $filename)
DESCRIPTION
Gathers the statistics of the file named by $filename. If $filename is a symbolic link, statistics are from the file itself, not the sym-
link.
lstat(3) is identical to stat(3) except it would instead be based off the symlinks status.
PARAMETERS
o $filename
- Path to the file.
RETURN VALUES stat(3) and fstat(3) result format
+--------+--------------------------------------+---+
|Numeric | | |
| | | |
| | Associative | |
| | | |
| | Description | |
| | | |
+--------+--------------------------------------+---+
| 0 | | |
| | | |
| | dev | |
| | | |
| | device number | |
| | | |
| 1 | | |
| | | |
| | ino | |
| | | |
| | inode number * | |
| | | |
| 2 | | |
| | | |
| | mode | |
| | | |
| | inode protection mode | |
| | | |
| 3 | | |
| | | |
| | nlink | |
| | | |
| | number of links | |
| | | |
| 4 | | |
| | | |
| | uid | |
| | | |
| | userid of owner * | |
| | | |
| 5 | | |
| | | |
| | gid | |
| | | |
| | groupid of owner * | |
| | | |
| 6 | | |
| | | |
| | rdev | |
| | | |
| | device type, if inode device | |
| | | |
| 7 | | |
| | | |
| | size | |
| | | |
| | size in bytes | |
| | | |
| 8 | | |
| | | |
| | atime | |
| | | |
| | time of last access (Unix timestamp) | |
| | | |
| 9 | | |
| | | |
| | mtime | |
| | | |
| | time of last modification (Unix | |
| | timestamp) | |
| | | |
| 10 | | |
| | | |
| | ctime | |
| | | |
| | time of last inode change (Unix | |
| | timestamp) | |
| | | |
| 11 | | |
| | | |
| | blksize | |
| | | |
| | blocksize of filesystem IO ** | |
| | | |
| 12 | | |
| | | |
| | blocks | |
| | | |
| | number of 512-byte blocks allocated | |
| | ** | |
| | | |
+--------+--------------------------------------+---+
* On Windows this will always be 0.
** Only valid on systems supporting the st_blksize type - other systems (e.g. Windows) return -1.
In case of error, stat(3) returns FALSE.
Note
Because PHP's integer type is signed and many platforms use 32bit integers, some filesystem functions may return unexpected results
for files which are larger than 2GB.
ERRORS /EXCEPTIONS
Upon failure, an E_WARNING is emitted.
EXAMPLES
Example #1
stat(3) example
<?php
/* Get file stat */
$stat = stat('C:phpphp.exe');
/*
* Print file access time, this is the same
* as calling fileatime()
*/
echo 'Access time: ' . $stat['atime'];
/*
* Print file modification time, this is the
* same as calling filemtime()
*/
echo 'Modification time: ' . $stat['mtime'];
/* Print the device number */
echo 'Device number: ' . $stat['dev'];
?>
Example #2
Using stat(3) information together with touch(3)
<?php
/* Get file stat */
$stat = stat('C:phpphp.exe');
/* Did we failed to get stat information? */
if (!$stat) {
echo 'stat() call failed...';
} else {
/*
* We want the access time to be 1 week
* after the current access time.
*/
$atime = $stat['atime'] + 604800;
/* Touch the file */
if (!touch('some_file.txt', time(), $atime)) {
echo 'Failed to touch file...';
} else {
echo 'touch() returned success...';
}
}
?>
NOTES
Note
Note that time resolution may differ from one file system to another.
Note
The results of this function are cached. See clearstatcache(3) for more details.
Tip
As of PHP 5.0.0, this function can also be used with some URL wrappers. Refer to "Supported Protocols and Wrappers" to determine
which wrappers support stat(3) family of functionality.
SEE ALSO lstat(3), fstat(3), filemtime(3), filegroup(3).
PHP Documentation Group STAT(3)