oefening 3
Het script maakt op alle dagen behalve zondag een backup van de folder /var/log/ in de vorm van een tar.gz-bestand met als naam backup_dagmaandjaar.tar.gz
#!/usr/bin/php5
$tijd=getdate();
if ($tijd["wday"] ==0) exit;$dag=$tijd["mday"];$maand=$tijd["month"];$jaar=$tijd["year"];$cmd="tar -czf backup-".$jaar."_".$maand."_".$dag.".tar /var/log";system($cmd);?>Oefening 4
Om de minuut test het script of het bestand met de opgegeven naam bestaat. Van zodra het bestand bestaat wordt de melding "naam_bestand now exists" getoond en wordt het script gestopt.
#!/usr/bin/php5
for (;;) {
if(file_exists($argv[1])) {
echo"Hoera\n";
exit;
}sleep(60);
}?>Oefening 5
Maak een menu met volgende keuzemogelijkheden:
1) Kalender
2) Backup
3) Manpage
4) Einde
De menu-opdrachten voeren het volgende uit:
Kalender
De kalender van het huidige jaar wordt pagina per pagina getoond (verder gaan met enter).
#!/usr/bin/php5
echo"1. kalender\n";
echo"2. backup\n";
echo"3. manpage\n";
echo"4. exit\n";$input=readline("maak een keuze: ");
if ($input=="1")kalender();
if ($input=="2")backup();
if ($input=="3")manpage();
if ($input=="4") exit;
}
functionkalender() {
for ($maand=1;$maand<13;$maand++) {system("clear");system("cal -m$maand");readline("druk enter om verder te gaan");
}
}
functionbackup() {
for (;;) {$filename=readline("De naam van je backup: ");$dir=readline("Directory voor backup: ");
if ((!empty($filename)) && (!empty($dir))) break;
}
if (file_exists($dir)) {$command="tar -czf backup-".$filename.".tgz ".$dir." > /dev/null";system($command);
} else {
echo("De map bestaat niet. \n");
}
}
functionmanpage() {$command=readline("Kies een commando: ");system("man ".$command,$returnvalue);
if ($returnvalue!=FALSE) {
echo("Geen manpage gevonden\n");
}readline("Druk een toets om verder te gaan");
}?>Oefening 6
Het bestand namen.txt bevat een aantal namen. Maak een scriptje dat als argument op de commandolijn een naam heeft.
Indien de naam gevonden wordt in het bestand namen.txt:
Er wordt op het scherm een alfabetische lijst met deze namen afgedrukt.
Na deze lijst wordt er getoond hoeveel namen dit zijn. Geef deze melding de volgende vorm: "Gevonden: 3" -> indien er drie namen gevonden werden.
Indien de naam niet gevonden werd, geef je de melding "Niets gevonden".
#!/usr/bin/php5
echo"je moet een naam opgeven\n";
exit;
}$naam=$argv[1];$content=file("namen.txt",FILE_IGNORE_NEW_LINES);sort($content);
if (in_array($naam,$content)) {
foreach($contentas$line) {
echo$line."\n";
}
echo"Het bestand bevat ".count($content) ." namen.\n";
}?>