如何从php脚本执行shell
我想从php脚本执行这个命令如何从php脚本执行shell,php,shell,command-line,exec,Php,Shell,Command Line,Exec,我想从php脚本执行这个命令 scrapy crawl example -a siteid=100 我试过这个: <?php $id = 100; exec('scrapy crawl example -a siteid= $id' $output, $ret_code); ?> 来自 $output=shell_exec('ls-lart'); 回显“$output”; 简而言之,有一个本机PHP命令可以执行您想要的操作。您还可以通过谷歌搜索exec(),这是一个类似的函数
scrapy crawl example -a siteid=100
我试过这个:
<?php
$id = 100;
exec('scrapy crawl example -a siteid= $id' $output, $ret_code);
?>
来自
$output=shell_exec('ls-lart');
回显“$output”;
简而言之,有一个本机PHP命令可以执行您想要的操作。您还可以通过谷歌搜索exec()
,这是一个类似的函数。来自
$output=shell_exec('ls-lart');
回显“$output”;
简而言之,有一个本机PHP命令可以执行您想要的操作。您也可以在谷歌上搜索
exec()
,这是一个类似的函数。根据您是否需要脚本的输出,有不同的方法
执行命令并将输出返回给调用者exec
- 当Unix命令的输出是需要直接传回浏览器的二进制数据时,应使用
函数代替execpassthru
执行外部程序并显示输出,但仅显示最后一行system
-创建一个单向读/写的新进程popen
-创建支持双向读写的新进程proc\u open
popen
和pclose
的组合,因为我认为您不需要脚本输出
include('Net/SSH2.php');
$ssh = new Net_SSH2("Your IP Here");
if (!$ssh->login('Your User', 'Your Password')) {
exit('Login Failed');
}
$id = 100;
echo "<pre>";
print_r($ssh->exec('scrapy crawl example -a siteid= $id'));
根据您是否需要脚本的输出,有不同的方法
执行命令并将输出返回给调用者exec
- 当Unix命令的输出是需要直接传回浏览器的二进制数据时,应使用
函数代替execpassthru
执行外部程序并显示输出,但仅显示最后一行system
-创建一个单向读/写的新进程popen
-创建支持双向读写的新进程proc\u open
popen
和pclose
的组合,因为我认为您不需要脚本输出
include('Net/SSH2.php');
$ssh = new Net_SSH2("Your IP Here");
if (!$ssh->login('Your User', 'Your Password')) {
exit('Login Failed');
}
$id = 100;
echo "<pre>";
print_r($ssh->exec('scrapy crawl example -a siteid= $id'));
phpseclib-从下载并将其包含在项目中
<?php
$id = 100;
exec('scrapy crawl example -a siteid=$id 2>&1', $output);
return $output;
?>
include('Net/SSH2.php');
$ssh=new Net_SSH2(“您的IP在此”);
如果(!$ssh->login('Your User','Your Password')){
退出(“登录失败”);
}
$id=100;
回声“;
打印($ssh->exec('scrapy crawl-example-a siteid=$id');
希望这有帮助 phpseclib-从下载并将其包含在项目中
<?php
$id = 100;
exec('scrapy crawl example -a siteid=$id 2>&1', $output);
return $output;
?>
include('Net/SSH2.php');
$ssh=new Net_SSH2(“您的IP在此”);
如果(!$ssh->login('Your User','Your Password')){
退出(“登录失败”);
}
$id=100;
回声“;
打印($ssh->exec('scrapy crawl-example-a siteid=$id');
希望这有帮助 试试这个:
因为您没有将参数放在“”中,所以您将其放在外部,请阅读PHP中的文本concat。尝试以下方法:
因为你没有把参数放在“”里面,你把它放在外面,阅读PHP中的文本concat。这个命令是否运行
scrapy crawl示例-a siteid=100
没有PHP?@Abhishekgurjar是的,你看到的是一个空白屏幕吗?@MeganFox你说的空白屏幕是什么意思?什么是print\r($output)
giving?此命令是否运行scrapy crawl示例-没有php的siteid=100
?@Abhishekgurjar是的,您看到的是空白屏幕吗?@MeganFox空白屏幕是什么意思?什么是print\r($output)代码>给予?
exec('scrapy crawl example -a siteid=' . $id);