Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Linux Uptime

284 views
Skip to first unread message

Matt

unread,
Dec 16, 2010, 8:32:43 PM12/16/10
to begi...@perl.org
I have a perl script but I want to exit it if the uptime on the server
is less then say an hour. Any idea how I would get uptime with perl?

Sheppy R

unread,
Dec 16, 2010, 8:48:57 PM12/16/10
to Matt, begi...@perl.org
http://search.cpan.org/~burak/Sys-Info-Base-0.73/lib/Sys/Info/OS.pm#uptime

Sys::Info::OS has an uptime() method.

On Thu, Dec 16, 2010 at 8:32 PM, Matt <lm7...@gmail.com> wrote:

> I have a perl script but I want to exit it if the uptime on the server
> is less then say an hour. Any idea how I would get uptime with perl?
>

> --
> To unsubscribe, e-mail: beginners-...@perl.org
> For additional commands, e-mail: beginne...@perl.org
> http://learn.perl.org/
>
>
>

Jim Gibson

unread,
Dec 16, 2010, 9:26:53 PM12/16/10
to begi...@perl.org
At 7:32 PM -0600 12/16/10, Matt wrote:
>I have a perl script but I want to exit it if the uptime on the server
>is less then say an hour. Any idea how I would get uptime with perl?

On Unix:

my $uptime = qx(uptime);

Then parse $uptime with a regular expression, which may depend upon
what your version of uptime outputs :

if( $uptime =~ /up (\d+s+\w+)/ ) {
print "$1\n";
}


--
Jim Gibson
J...@Gibson.org

Jeff Peng

unread,
Dec 16, 2010, 9:25:41 PM12/16/10
to begi...@perl.org
于 2010-12-17 9:32, Matt 写道:
> I have a perl script but I want to exit it if the uptime on the server
> is less then say an hour. Any idea how I would get uptime with perl?

$ cat /proc/uptime
4205976.64 4017280.59

The first column is the host's uptime seconds.

Jeff.

Katie T

unread,
Dec 16, 2010, 10:21:54 PM12/16/10
to Jeff Peng, begi...@perl.org

/proc/uptime is a linux innovation I believe, other *nix variant may
not have it (I don't think Solaris does).

Katie
--
CoderStack
http://www.coderstack.co.uk/perl-jobs
The Software Developer Job Board

Katie T

unread,
Dec 16, 2010, 10:28:56 PM12/16/10
to Jeff Peng, begi...@perl.org
On Fri, Dec 17, 2010 at 3:21 AM, Katie T <ka...@coderstack.co.uk> wrote:
> On Fri, Dec 17, 2010 at 2:25 AM, Jeff Peng <jeff...@gmx.net> wrote:
>> 于 2010-12-17 9:32, Matt 写道:
>>>
>>> I have a perl script but I want to exit it if the uptime on the server
>>> is less then say an hour.  Any idea how I would get uptime with perl?
>>
>> $ cat /proc/uptime
>> 4205976.64 4017280.59
>>
>> The first column is the host's uptime seconds.
>
> /proc/uptime is a linux innovation I believe, other *nix variant may
> not have it (I don't think Solaris does).

d'oh just read the subject line. ignore me.

Shawn H Corey

unread,
Dec 16, 2010, 10:29:44 PM12/16/10
to begi...@perl.org
On 10-12-16 10:21 PM, Katie T wrote:
> /proc/uptime is a linux innovation I believe, other *nix variant may
> not have it (I don't think Solaris does).

The /proc directory is a pseudo-directory that the kernel maintains.
Every "file" in it is a pipe that can be read using regular file
handles. And I believe only Linux does this.


--
Just my 0.00000002 million dollars worth,
Shawn

Confusion is the first step of understanding.

Programming is as much about organization and communication
as it is about coding.

The secret to great software: Fail early & often.

Eliminate software piracy: use only FLOSS.

Jeff Peng

unread,
Dec 16, 2010, 11:17:37 PM12/16/10
to begi...@perl.org
于 2010-12-17 11:29, Shawn H Corey 写道:
> Every "file" in it is a pipe that can be read using regular file
> handles. And I believe only Linux does this.

Yep.Also the OP is asking exactly about linux.

--
Jeff Peng
jeff...@gmx.net

Alan Haggai Alavi

unread,
Dec 17, 2010, 12:30:53 AM12/17/10
to begi...@perl.org, Matt
Matt wrote:


Hi,

You could use the distribution: Unix::Uptime
(http://search.cpan.org/perldoc?Unix::Uptime)

Example:

use strict;
use warnings;

use Unix::Uptime;

my $uptime_hours = Unix::Uptime->uptime() / 3600;
if ( $uptime_hours < 1 ) {
exit(127);
}

Regards,
Alan Haggai Alavi.
--
The difference makes the difference.

0 new messages