Wget ile URL arayın ve URL içeriğine bağlı olarak bir ERRORLEVEL'ı dönmek

1 Cevap php

Bir müşteri bir CMS içeriğini düzenlemek hangi bir Windows tabanlı bir in-house sunucusu vardır. Veri canlı web sunucusu ile gece eşitlenir. Bu yavaş bir Internet bağlantısı için bir çözüm olur.

Yeni dosyaları (zaten sıralanır) ve MySQL veritabanı: senkronize gereken iki şey vardır. Bunu yapmak için, ben mysqldump kullanılarak bir döküm dosyası içine veritabanı ihracat ve dökümü yüklenenler bir senaryo yazıyorum.

Yükleme işlemi ScriptFTP adında bir 3. parti aracı, bir FTP otomasyon aracı kullanılarak yapılır.

Daha sonra hedef sunucuda bir PHP tabanlı ithalat komut dosyası çalıştırmak gerekir. Bu komut dosyasının dönüş değerine bağlı olarak, ScriptFTP operasyon devam ediyor, ve bazı dizinler yeniden adlandırılmış.

ScriptFTP sadece FTP aramaları destekler gibi ben, bunun için harici bir araç gerekiyor. I wget Windows sürümü hakkında düşünüyordum.

ScriptFTP içinde, herhangi bir parti ya da exe dosyası yürütebilirsiniz, ama ben sadece the errorlevel çağrısı değil stdout çıkış kaynaklanan ayrıştırmak. Bu iyi giderse ben PHP alma işlemi yanlış giderse errorlevel 1 dönmek ve errorlevel 0 gerektiği anlamına gelir. Ayrıca, tabii, ben ithalat script bağlantısı tüm yapılacaktır olamazdı eğer olumlu bir errorlevel dönmek gerekiyor.

Ben ithalatçı PHP komut dosyası üzerinde tam kontrole sahip, ve bu hata ne karar verebilirsiniz: ne olursa olsun, bir başlık dönmek Çıkış bir hata iletisi.

How would you go about running wget (or any other tool to kick off the server side import) and returning a certain error level depending on what the PHP script returns?

Benim en iyi bahis şu anda, wget komutu yürütür bir dosyaya sonucu depolayan bir toplu iş dosyası yapı ve toplu iş dosyası dosyanın içeriğine bağlı errorlevel 0 veya 1 dönen. Ama gerçekten toplu programlama ile bir dosyanın içeriğini maç nasıl bilmiyorum.

1 Cevap

Siz powershell aşağıdakileri yapabilirsiniz:

$a = wget --quiet -O - www.google.com
$rc = $a.CompareTo("Your magic string")
exit $rc