php - 如何使用 PHP 运行多个 linux 命令

标签 php ruby-on-rails linux mongodb mongodb-php

是否可以使用 PHP 运行多个 linux 命令。我正在使用 Mongodb 数据库,如果我想导入多个集合,我将分别为每个集合运行以下命令。

mongoimport --db test --collection colour --file colour.json
mongoimport --db test --collection shape --file shape.json
mongoimport --db test --collection size --file size.json

现在我至少有 10 个集合,我必须在 linux 命令行中单独运行它们中的每一个。应该有更好的方法来做到这一点。我在想的是编写一个 php 脚本来为我做这件事。

任何想法、建议都会很有帮助。提前致谢。

最佳答案

您可以让 PHP 预先创建所有 shell 命令,然后一次运行它们:

$collections = array('color', 'shape', 'size');
$command = '';

foreach($collections as $collection) {
    $command .= 'mongoimport --db test --collection ' . $collection . ' --file ' . $collection . '.json; ';
}

shell_exec($command);

这消除了对 shell_exec() 的多次调用.然而,也许 mongoimportPHP mongo API 中可用。 .

关于php - 如何使用 PHP 运行多个 linux 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19882811/

相关文章:

PHP:字符串在特殊字符处中断

php - 如何添加嵌套类来悬停菜单

ruby-on-rails - RSpec : repeated expect 的 DRY Controller 规范

ruby-on-rails - 具有自定义验证的 Shoulda Matcher 导致所有 shoulda 验证失败

ruby-on-rails - Rails 未定义方法 `[]' 为 nil :NilClass

linux - 将日志文件解析为多个唯一的日志文件

linux - 有人可以帮助解释这个 Bash 脚本在做什么吗?

php - 在 PHP 中是否有比这更好/替代的方法将变量传递到页面?

linux - 移动 30 分钟前的文件

php - 在页面上的图像后面插入字符串