【问题标题】:python command in php system()php系统中的python命令()
【发布时间】:2012-07-31 16:08:52
【问题描述】:

我正在尝试编写 php 代码以使用 php 的 system() 函数自动更改邮递员邮件列表的描述名称。但我不知道该怎么办。

<?php
system('bin/withlist -l market
m.description = 'NewName'
m.Save()
exit()');
?>

这里是更改描述名称的命令行命令:

$ bin/withlist -l market
>>> m.description = 'NewName'
>>> m.Save()
>>> exit()

请帮帮我

【问题讨论】:

  • ... 除了您的字符串中缺少引号转义之外,您的问题到底是什么?你遇到错误了吗?

标签: php python system mailman


【解决方案1】:

system() 将其全部作为一个命令运行。您正在寻找允许您传递输入的内容,例如 popen()

这是一个例子:

if ($handle = popen('bin/withlist -l market', 'w')) {
    fwrite($handle, "m.description = 'NewName'\n");
    fwrite($handle, "m.Save()\n");
    fwrite($handle, "exit()\n");
    pclose($handle);
}

【讨论】:

  • 感谢 lunixbochs。我试过你的代码,但有一个错误:Loading list market (locked) The variable 'm' is the market MailList instance File "&lt;console&gt;", line 1 m.Save()\nexit()\n ^ SyntaxError: unexpected character after line continuation character Unlocking (but not saving) list: market Finalizing &gt;&gt;&gt; &gt;&gt;&gt; &gt;&gt;&gt;
【解决方案2】:

你可以使用&lt;&lt;&lt;py_eval()函数来运行python代码。

更多信息:http://www.csh.rit.edu/~jon/projects/pip/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-22
    • 1970-01-01
    • 2014-07-31
    • 2014-01-23
    • 2014-04-16
    • 1970-01-01
    • 1970-01-01
    • 2011-11-27
    相关资源
    最近更新 更多