我需要在服务器上运行一系列6个.sh文件。
其中一个.sh文件的示例:
wget ftp://xxxxxx:xxxxxx@ftp.interhome.com/accommodation.xml.zip
unzip accommodation.xml.zip
php accommodation.php
rm -rf accommodation.xml.zip
rm -rf accommodation.xml我试着从一个php文件中运行以下命令:
echo shell_exec('sh accomodation.sh');这是愚蠢的,因为文件似乎重复执行,我想我刚刚关闭了服务器。哇哦。
我继承了这个网站,以前从未使用过.sh文件。我也是一个php新手。
我该如何开始只运行一次文件,然后运行下一次呢?
非常感谢
发布于 2011-11-24 21:03:38
您可以在PHP中完成所有这些操作,您不需要任何shell脚本。
/* get the file via ftp */
// connect to server
$ftp = ftp_connect('ftp.interhome.com');
// login
$login = ftp_login($ftp,"username","password");
// download file to tmp.zip
$file = ftp_get($ftp, 'tmp.zip', 'accommodation.xml.zip', FTP_BINARY);
// disconnect from server
ftp_close($ftp);
/* unzip the file */
// new zip-instance
$zip = new ZipArchive;
// open downloaded file
$res = $zip->open(’tmp.zip’);
// check if file is readable
if ($res === TRUE) {
// extract to current directory
$zip->extractTo(’./’);
// close zip-file
$zip->close();
}
/* your code from accommodation.php goes here */
// delete files
unlink('tmp.zip');
unlink('accommodation.xml');瞧!
https://stackoverflow.com/questions/8257204
复制相似问题