【问题标题】:Run screen from Perl从 Perl 运行屏幕
【发布时间】:2011-08-22 15:33:27
【问题描述】:

我有一个想要通过屏幕运行的 Jar 文件,尽管当我尝试打开 Perl 脚本时一切似乎都工作正常,尽管当我执行 top 时我没有在列表中看到该进程,如果我将命令复制粘贴到 SSH 会话中,它就可以正常工作...

这是我正在使用的代码:
开始.pl

# !/usr/local/bin/perl
system("cd /var/server/; screen java -Xmx1024M -Xms1024M -jar jarfile.jar > /dev/null 2>&1 &");

谁能指出这是为什么?

【问题讨论】:

    标签: java linux perl bash gnu-screen


    【解决方案1】:

    问题是屏幕试图抓住终端,这在system 命令的上下文中是不可能的。最简单的解决方案是通过添加-d -m 选项以分离模式启动屏幕会话:

    # !/usr/local/bin/perl
    system("cd /var/server/; screen -d -m java -Xmx1024M -Xms1024M -jar jarfile.jar > /dev/null 2>&1 &");
    

    【讨论】:

      猜你喜欢
      • 2017-07-10
      • 2017-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-15
      • 1970-01-01
      • 2012-07-29
      相关资源
      最近更新 更多