jeg er en indehaver af ca. 130 webhoteller på min windows 2003 server (både mine egne og venners sider), jeg er nu kommet til et punkt hvor jeg skal have slettet de sider som ikke findes på serveren. Jeg har en mappe der hedder C:\Webhoteller\ og i denne mappe ligger ALLE webhoteller på hele serveren, det jeg så ønsker er et script som kan liste navnene på disse mapper som alle er domaene1.dk domaene2.dk osv. når så disse domæner er blevet listet skal de pinges og ip'en på den server hvor domænet ligger skal vises. det kunne fx. se sådan ud:
Jeg kan nu se at domaene4.dk skal slettes på serveren, mange folk syntes måske dette er en tåbelig ide men jeg gider bare ikke sidde og tjekke alle domænerne selv og jeg regner senere med at få flere venners sider på serveren og så bliver det jo bare endnu lettere og smartere, håber der er en der kan fixe et sådant script eller evt. ved hvor man kan finde et
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
det må da være muligt at lave noget der selv kan hente navnene på domænerne fra mappen C:\webhoteller\ ?? det er jo træls og skal indtaste det hele, det ville være irriterende!
Følgende kunne være en start. Put det i en batch-fil og læg den i C:\Webhoteller. Hvis du får det til at virke kan vi prøve at parse outputtet fra ping. <code> echo off setlocal for /F %%i in ('dir /AD /B') do call :do_it %%i endlocal goto :eof
desuden er det lidt mystisk det .bat script.. det vil kun virke en gang imellem og jeg tror det er alt for sløvt når det handler om over 50 domæner ??..
nu har jeg lige prøvet at køre det igen og det vil ikke virke.. første gang virkede det fint men så anden og tredje gang ville det ikke virke men så fjerde gang så virkede det igen.. men jeg vil meget gerne have det i PHP :) måske man kunne bruge denne kode til noget:
Det er cyberfinn's script som jeg mener.. syntes også de andre var fine men de virkede ikke korrekt og var rimelig langsomme.. men det cyberfinn har er kanon da det også kan køres fra nettet og det lader til det er ret hurtigt ;-)
Synes godt om
Slettet bruger
11. juni 2003 - 19:05#24
Kører du ikke lige om udskriver alt hvad den skriver, for jeg kan sætte det helt rigtig op, er nemlig forskellig fra Win 2000 til Nt så måske også til 2003
Ping-statistikker for 216.239.37.99: Pakker: Sendt = 1, modtaget = 1, tabt = 0 (0% tab), Gennemsnitlig tid for rundtur i millisekunder: Mindst = 150ms, størst = 150ms, gennemsnitlig = 150ms
Pinging www.google.com [216.239.51.99] with 32 bytes of data:
Reply from 216.239.51.99: bytes=32 time=116ms TTL=50
Ping statistics for 216.239.51.99: Packets: Sent = 1, Received = 1, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 116ms, Maximum = 116ms, Average = 116ms
men jeg skal både bruge den på en 2003 og 2000 server :) ved ikke om det er det samme,
Venlig Hilsen Elvis
Synes godt om
Slettet bruger
12. juni 2003 - 16:28#35
Det er slet ikke det samme, men du får scripet til Windows 2003 server nu
Synes godt om
Slettet bruger
12. juni 2003 - 16:28#36
HER: <?PHP //Dette script er udviklet af Cyberfinn (webfun@webfun.dk) //Må benyttes frit til privat brug, hvis bare disse linjer forbliver i scripet. //Du skal opsætte dissse tre opsætninger.
//Her skal man opsætte ipadressen på serveren. $serverip = "217.157.182.100";
//Den mappe hvor de forskellige domains ligger. (Da det er en win maskine skal det være sådan: c:\\Websites\\) $dir = "c:\\Website\\kunder";
//------------------------------------------VIGTIG--------------------------------------------- //----------------------------Alt herunder skal der ikke ændres på.----------------------------- echo "<div align=\"left\"><font size=\"3\" face=\"Verdana, Arial, Helvetica, sans-serif\"><strong>Server tjeksystem af Cyberfinn</strong><br>Arbejder i mappen: " . $dir . "<br>Serverens ip: " . $serverip . "</font></div>"; echo "<br><table border=\"1\" align=\"left\" cellpadding=\"3\" cellspacing=\"0\" bordercolor=\"#000000\">"; if ($handle = opendir($dir)) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { echo "<tr>\n"; $ip_dns = "www." . $file; echo "<td>" . $ip_dns . "</td>\n"; exec("ping ".$ip_dns." -n 1", $ping_results); $rows = count($ping_results); $tjek = $ping_results[$rows-1]; if(strstr($tjek,"not")) { echo "<td><font color=\"#FF0000\" >Domainet kører ikke.</font></td>\n"; } else { $ping = $ping_results[$rows-8]; preg_match("/\d{1,}\.\d{1,}\.\d{1,}\.\d{1,}/",$ping,$regs); if ($regs[0] == $serverip) { echo "<td><font color=\"#00CC33\">Kører på serveren</font></td>\n"; } else { echo "<td><font color=\"#FF0000\">Kører på en anden server (" . $regs[0] . ")</font></td>\n"; } } echo "</tr>\n"; } } closedir($handle); } ?> </table>
Pinging www.google.com [216.239.37.99] with 32 bytes of data:
Reply from 216.239.37.99: bytes=32 time=157ms TTL=49
Ping statistics for 216.239.37.99: Packets: Sent = 1, Received = 1, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 157ms, Maximum = 157ms, Average = 157ms
<?PHP //Dette script er udviklet af Cyberfinn (webfun@webfun.dk) //Må benyttes frit til privat brug, hvis bare disse linjer forbliver i scripet. //Du skal opsætte dissse tre opsætninger.
//Her skal man opsætte ipadressen på serveren. $serverip = "217.157.182.100";
//Den mappe hvor de forskellige domains ligger. (Da det er en win maskine skal det være sådan: c:\\Websites\\) $dir = "c:\\Website\\kunder";
//------------------------------------------VIGTIG--------------------------------------------- //----------------------------Alt herunder skal der ikke ændres på.----------------------------- echo "<div align=\"left\"><font size=\"3\" face=\"Verdana, Arial, Helvetica, sans-serif\"><strong>Server tjeksystem af Cyberfinn</strong><br>Arbejder i mappen: " . $dir . "<br>Serverens ip: " . $serverip . "</font></div>"; echo "<br><table border=\"1\" align=\"left\" cellpadding=\"3\" cellspacing=\"0\" bordercolor=\"#000000\">"; if ($handle = opendir($dir)) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { echo "<tr>\n"; $ip_dns = "www." . $file; echo "<td>" . $ip_dns . "</td>\n"; exec("ping ".$ip_dns." -n 1", $ping_results); $rows = count($ping_results); $tjek = $ping_results[$rows-1]; if(strstr($tjek,"Unknown")) { echo "<td><font color=\"#FF0000\" >Domainet kører ikke.</font></td>\n"; } else { $ping = $ping_results[$rows-8]; preg_match("/\d{1,}\.\d{1,}\.\d{1,}\.\d{1,}/",$ping,$regs); if ($regs[0] == $serverip) { echo "<td><font color=\"#00CC33\">Kører på serveren</font></td>\n"; } else { echo "<td><font color=\"#FF0000\">Kører på en anden server (" . $regs[0] . ")</font></td>\n"; } } echo "</tr>\n"; } } closedir($handle); } ?> </table>
sådan nu begynder det jo at spille.. lige en sidste ting.. kan du ikke lave sådan i det script til windows 2000 at den skriver hvor mange af siderne der er oppe (altså tæller alle de grønne sider) det ville være rigtig lækkert ;--)
desuden så hvis domainet ikke findes så skriver den ikke "Domainet kører ikke" men istedet Kører på en anden server ()..
hilsen elvis
Synes godt om
Slettet bruger
13. juni 2003 - 10:41#45
elvis17: Når den skriver "Domainet kører ikke" så er det fordi den ikke peger på nogen server, enten er domainet ikke oprettet eller så han man ikke a-record på dnsen til den.
hehe okay :).. kunne du lave så den tæller hvor mange domæner der er på serveren altså dem der er grønne og hvor mange der ikke er på serveren, altså de røde :)? og smid så et svar hehe
Synes godt om
Slettet bruger
13. juni 2003 - 13:26#47
ja
Synes godt om
Slettet bruger
13. juni 2003 - 13:32#48
Til Win 2003: <?PHP //Dette script er udviklet af Cyberfinn (webfun@webfun.dk) //Må benyttes frit til privat brug, hvis bare disse linjer forbliver i scripet. //Du skal opsætte dissse tre opsætninger.
//Her skal man opsætte ipadressen på serveren. $serverip = "217.157.182.100";
//Den mappe hvor de forskellige domains ligger. (Da det er en win maskine skal det være sådan: c:\\Websites\\) $dir = "c:\\Website\\kunder";
//------------------------------------------VIGTIG--------------------------------------------- //----------------------------Alt herunder skal der ikke ændres på.----------------------------- echo "<div align=\"left\"><font size=\"3\" face=\"Verdana, Arial, Helvetica, sans-serif\"><strong>Server tjeksystem af Cyberfinn</strong><br>Arbejder i mappen: " . $dir . "<br>Serverens ip: " . $serverip . "</font></div>"; echo "<br><table border=\"1\" align=\"left\" cellpadding=\"3\" cellspacing=\"0\" bordercolor=\"#000000\">"; $green = "0"; $red = "0"; if ($handle = opendir($dir)) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { echo "<tr>\n"; $ip_dns = "www." . $file; echo "<td>" . $ip_dns . "</td>\n"; exec("ping ".$ip_dns." -n 1", $ping_results); $rows = count($ping_results); $tjek = $ping_results[$rows-1]; if(strstr($tjek,"not")) { echo "<td><font color=\"#FF0000\" >Domainet kører ikke.</font></td>\n"; $red++; } else { $ping = $ping_results[$rows-8]; preg_match("/\d{1,}\.\d{1,}\.\d{1,}\.\d{1,}/",$ping,$regs); if ($regs[0] == $serverip) { echo "<td><font color=\"#00CC33\">Kører på serveren</font></td>\n"; $green++; } else { echo "<td><font color=\"#FF0000\">Kører på en anden server (" . $regs[0] . ")</font></td>\n"; $red++; } } echo "</tr>\n"; } } closedir($handle); } ?> </table> <p>Der er <? echo $green; ?> domain som kører på denne server.<br>Der er <? echo $red; ?> domain som kører på denne server.</p>
Til WIN 2000: <?PHP //Dette script er udviklet af Cyberfinn (webfun@webfun.dk) //Må benyttes frit til privat brug, hvis bare disse linjer forbliver i scripet. //Du skal opsætte dissse tre opsætninger.
//Her skal man opsætte ipadressen på serveren. $serverip = "217.157.182.100";
//Den mappe hvor de forskellige domains ligger. (Da det er en win maskine skal det være sådan: c:\\Websites\\) $dir = "c:\\Website\\kunder";
//------------------------------------------VIGTIG--------------------------------------------- //----------------------------Alt herunder skal der ikke ændres på.----------------------------- echo "<div align=\"left\"><font size=\"3\" face=\"Verdana, Arial, Helvetica, sans-serif\"><strong>Server tjeksystem af Cyberfinn</strong><br>Arbejder i mappen: " . $dir . "<br>Serverens ip: " . $serverip . "</font></div>"; echo "<br><table border=\"1\" align=\"left\" cellpadding=\"3\" cellspacing=\"0\" bordercolor=\"#000000\">"; $green = "0"; $red = "0"; if ($handle = opendir($dir)) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { echo "<tr>\n"; $ip_dns = "www." . $file; echo "<td>" . $ip_dns . "</td>\n"; exec("ping ".$ip_dns." -n 1", $ping_results); $rows = count($ping_results); $tjek = $ping_results[$rows-1]; if(strstr($tjek,"Unknown")) { echo "<td><font color=\"#FF0000\" >Domainet kører ikke.</font></td>\n"; $red++; } else { $ping = $ping_results[$rows-8]; preg_match("/\d{1,}\.\d{1,}\.\d{1,}\.\d{1,}/",$ping,$regs); if ($regs[0] == $serverip) { echo "<td><font color=\"#00CC33\">Kører på serveren</font></td>\n"; $green++; } else { echo "<td><font color=\"#FF0000\">Kører på en anden server (" . $regs[0] . ")</font></td>\n"; $red++; } } echo "</tr>\n"; } } closedir($handle); } ?> </table> <p>Der er <? echo $green; ?> domain som kører på denne server.<br>Der er <? echo $red; ?> domain som kører på denne server.</p>
Synes godt om
Slettet bruger
13. juni 2003 - 13:34#49
UPS, der var en lille fejl, prøv med disse: Til Win 2003: <?PHP //Dette script er udviklet af Cyberfinn (webfun@webfun.dk) //Må benyttes frit til privat brug, hvis bare disse linjer forbliver i scripet. //Du skal opsætte dissse to opsætninger.
//Her skal man opsætte ipadressen på serveren. $serverip = "217.157.182.100";
//Den mappe hvor de forskellige domains ligger. (Da det er en win maskine skal det være sådan: c:\\Websites\\) $dir = "c:\\Website\\kunder";
//------------------------------------------VIGTIG--------------------------------------------- //----------------------------Alt herunder skal der ikke ændres på.----------------------------- echo "<div align=\"left\"><font size=\"3\" face=\"Verdana, Arial, Helvetica, sans-serif\"><strong>Server tjeksystem af Cyberfinn</strong><br>Arbejder i mappen: " . $dir . "<br>Serverens ip: " . $serverip . "</font></div>"; echo "<br><table border=\"1\" align=\"left\" cellpadding=\"3\" cellspacing=\"0\" bordercolor=\"#000000\">"; $green = "0"; $red = "0"; if ($handle = opendir($dir)) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { echo "<tr>\n"; $ip_dns = "www." . $file; echo "<td>" . $ip_dns . "</td>\n"; exec("ping ".$ip_dns." -n 1", $ping_results); $rows = count($ping_results); $tjek = $ping_results[$rows-1]; if(strstr($tjek,"not")) { echo "<td><font color=\"#FF0000\" >Domainet kører ikke.</font></td>\n"; $red++; } else { $ping = $ping_results[$rows-8]; preg_match("/\d{1,}\.\d{1,}\.\d{1,}\.\d{1,}/",$ping,$regs); if ($regs[0] == $serverip) { echo "<td><font color=\"#00CC33\">Kører på serveren</font></td>\n"; $green++; } else { echo "<td><font color=\"#FF0000\">Kører på en anden server (" . $regs[0] . ")</font></td>\n"; $red++; } } echo "</tr>\n"; } } closedir($handle); } ?> </table> <p>Der er <? echo $green; ?> domains som kører på denne server.<br>Der er <? echo $red; ?> domains som kører på EN ANDEN SERVER.</p>
Til WIN 2000: <?PHP //Dette script er udviklet af Cyberfinn (webfun@webfun.dk) //Må benyttes frit til privat brug, hvis bare disse linjer forbliver i scripet. //Du skal opsætte dissse to opsætninger.
//Her skal man opsætte ipadressen på serveren. $serverip = "217.157.182.100";
//Den mappe hvor de forskellige domains ligger. (Da det er en win maskine skal det være sådan: c:\\Websites\\) $dir = "c:\\Website\\kunder";
//------------------------------------------VIGTIG--------------------------------------------- //----------------------------Alt herunder skal der ikke ændres på.----------------------------- echo "<div align=\"left\"><font size=\"3\" face=\"Verdana, Arial, Helvetica, sans-serif\"><strong>Server tjeksystem af Cyberfinn</strong><br>Arbejder i mappen: " . $dir . "<br>Serverens ip: " . $serverip . "</font></div>"; echo "<br><table border=\"1\" align=\"left\" cellpadding=\"3\" cellspacing=\"0\" bordercolor=\"#000000\">"; $green = "0"; $red = "0"; if ($handle = opendir($dir)) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { echo "<tr>\n"; $ip_dns = "www." . $file; echo "<td>" . $ip_dns . "</td>\n"; exec("ping ".$ip_dns." -n 1", $ping_results); $rows = count($ping_results); $tjek = $ping_results[$rows-1]; if(strstr($tjek,"Unknown")) { echo "<td><font color=\"#FF0000\" >Domainet kører ikke.</font></td>\n"; $red++; } else { $ping = $ping_results[$rows-8]; preg_match("/\d{1,}\.\d{1,}\.\d{1,}\.\d{1,}/",$ping,$regs); if ($regs[0] == $serverip) { echo "<td><font color=\"#00CC33\">Kører på serveren</font></td>\n"; $green++; } else { echo "<td><font color=\"#FF0000\">Kører på en anden server (" . $regs[0] . ")</font></td>\n"; $red++; } } echo "</tr>\n"; } } closedir($handle); } ?> </table> <p>Der er <? echo $green; ?> domains som kører på denne server.<br>Der er <? echo $red; ?> domains som kører på EN ANDEN SERVER.</p>
Synes godt om
Slettet bruger
17. juni 2003 - 17:00#50
Får man snart point ??
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.