程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

php删除shell脚本的输出文件(脚本通过php运行)

发布于2023-12-27 22:25     阅读(170)     评论(0)     点赞(2)     收藏(3)


这是我的 php 代码

<?php
    $output=$_POST["code"];
    $my_file = '/opt/lampp/htdocs/trans/output/code.c';
    file_put_contents($my_file, $output);
    chmod($my_file, 0777);
    $outpu=shell_exec('./my.sh "{$my_file}"');
?>

my.sh 是一个编译一些 cpp 文件并生成目标文件的脚本。该脚本大约需要 78 秒才能执行。

我的问题是,如果手动执行脚本,它会成功生成目标文件。当它通过 php 运行时,会生成目标文件(我通过在另一个终端中执行“ls”找到它),但是当 php 执行停止时,它会自动删除生成的目标文件。

PS:- 我没有在脚本中编写任何“rm”命令。我已经设置了所有权限以及延长的 PHP 超时。

my.sh 包含

if [ -f "objectfile" ]
then
echo ""
else
GPP=`which g++`
$GPP -g ../../../../../../someHeader.h  ../../../../../../someCPP.cpp ../../../../../../someCPP.cpp../../../../../../someHeader.h  -I ../../../../../../someInclude -L ../../../../../../someLib  -o  objectfile 

fi
./objectfile

解决方案


暂无回答



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.phpheidong.com/blog/article/550922/748ddeffd55a8525c9b0/

来源:php黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

2 0
收藏该文
已收藏

评论内容:(最多支持255个字符)