Temat: web GUI do atd
napisane w php. wyświetla, pozwala usuwać i dodawać zadania.
serwer musi miec oczywiscie uprawnienia do obslugi atd, wiec apache z repo odpada.
sugestie mile widziane.
smacznego ![]()
<?php
//usuwanie zadania
if(isset($_GET['rem'])) {
$comand = 'atrm ' . $_GET['rem'];
echo shell_exec($comand);
}
//dodawanie zadania
if(isset($_GET['date'])) {
if(isset($_GET['command'])) {
$do = 'echo ' . $_GET['command'] . '| at ' . $_GET['date'];
echo shell_exec($do);
}
}
echo '<hr />';
$data = shell_exec('atq');
$data = explode("\n", $data);
// wyświetlanie listy zadań
$i = 0;
echo '<table border="1" cellspacing="0" cellpadding="3">';
while(isset($data[$i])) {
if($data[$i] != '') {
$record = explode(' ', $data[$i]);
echo '<tr><td>' . $record[0] . '</td>'; //nr zadania
$taskid = $record[0];
$record = explode(' ', $record[1]);
echo '<td>' . $record[0] . '</td>'; //dzień tygodnia
echo '<td>' . $record[1] . '</td>'; //miesiąc
echo '<td>' . $record[2] . '</td>'; //dzień miesiąca
echo '<td>' . $record[3] . '</td>'; //czas
echo '<td>' . $record[4] . '</td>'; //rok
$tdisp = 'at -c ' . $taskid;
$sep = 'exit 1' . "\n" . '}' . "\n";
$out = explode($sep, shell_exec($tdisp), 2);
echo '<td>' . nl2br($out[1]) . '</td>'; //zawartość zadania
echo '<td><a href="' . $_SERVER['PHP_SELF'] . '?rem=' . $taskid . '">usuń</a></td></tr>' . "\n"; //usuwanie
}
$i++;
}
//formulaż
echo '</table>';
echo '<form action="' . $_SERVER['PHP_SELF'] . '" method="get">';
echo '<table>';
echo '<tr><td>czas</td><td><input name="date" type="text" size="40" /></td></tr>';
echo '<tr><td>polecenie</td><td><input name="command" type="text" size="40" /></td></tr>';
echo '<tr><td> </td><td><input name="zapisz" type="submit" value="zapisz" /><input name="reset" type="reset" value="reset" /></td></tr>';
echo '</table>';
echo '</form>';
?>