On Tue, 18 Oct 2005 01:40:20 +0000, andt <andy@mail.dk> wrote:
>hvordan laver jeg et script der fortæller mig hvor mange år.dage.timer
>min apache2 server har kørt & hvorlang tid den har kørt sidste gang.
Har du adgang til at køre "exec" kan følgende bruges.
echo exec(uptime);
Den returnere så følgende data:
16:00:44 up 32 days, 22:11, 1 user, load average: 2.64, 2.65, 2.35
Der kan du så bare fjerne det du ikke skal bruge.
Alternativ kan følgende kode måske bruges.
function uptime () {
global $text;
$fd = fopen('/proc/uptime', 'r');
$ar_buf = split(' ', fgets($fd, 4096));
fclose($fd);
$sys_ticks = trim($ar_buf[0]);
$min = $sys_ticks / 60;
$hours = $min / 60;
$min = $min ."minutter";
$days = floor($hours / 24);
$hours = floor($hours - ($days * 24));
$min = floor($min - ($days * 60 * 24) - ($hours * 60));
if ($days != 0) {
$result = "$days " . "dage," . " ";
}
if ($hours != 0) {
$result .= "$hours " . "timer" . " ";
}
$result .= "$min " . "minutter";
return $result;
}
echo uptime();
Den returnere: 32 dage, 22 timer 11 minutter .
Den mangler at vise antal år, men det burde være rimelig nemt at få
den til.
Hvor jeg har koden fra kan jeg ikke huske, men den stamme helt sikkert
fra enten news eller et eller andet php forum. Om den virker på en
apache 2.x aner jeg ikke, men det vil jeg tro at den gør.
--
Med venlig hilsen
Michael Vendelbo
|