我需要我正在从事的这个项目的一些指导。 我有一个脚本来处理数据,我想在服务器上使用它。
如何集成命令以运行位于ProcessedData /的script.sh?
谢谢
<?php
if(isset($_FILES['file'])){
$errors= array();
$file_name = $_FILES['file']['name'];
$file_size =$_FILES['file']['size'];
$file_tmp =$_FILES['file']['tmp_name'];
$file_type=$_FILES['file']['type'];
$file_ext=strtolower(end(explode('.',$_FILES['file']['name'])));
$extensions= array("log");
if(in_array($file_ext,$extensions)=== false){
$errors[]="extension not allowed, please choose a log file.";
}
if($file_size > 2097152){
$errors[]='File size must be excately 2 MB';
}
if(empty($errors)==true){
move_uploaded_file($file_tmp,"ProcessedData/".$file_name);
echo "Success";
}else{
print_r($errors);
}
}
exec(parsing.sh);
?>
<form action="" method="POST" enctype="multipart/form-data">
<input type="file" name="file" />
<input type="submit"/>
</form>
这里是我的脚本的摘录:
#!/bin/bash
grep -w BLABLABLA ProcessedData/ant_traps.log > result.csv
答案 0 :(得分:0)
您可以使用exec(scriptName)
执行任何脚本。
答案 1 :(得分:-1)
解决方法
<?php
if(isset($_FILES['file'])){
$errors= array();
$file_name = $_FILES['file']['name'];
$file_size =$_FILES['file']['size'];
$file_tmp =$_FILES['file']['tmp_name'];
$file_type=$_FILES['file']['type'];
$file_ext=strtolower(end(explode('.',$_FILES['file']['name'])));
$extensions= array("log");
if(in_array($file_ext,$extensions)=== false){
$errors[]="extension not allowed, please choose a log file.";
}
if($file_size > 2097152){
$errors[]='File size must be excately 2 MB';
}
if(empty($errors)==true){
move_uploaded_file($file_tmp,"ProcessedData/".$file_name);
echo "Success";
}else{
print_r($errors);
}
}
echo shell_exec('sh parsing.sh');
?>