【问题标题】:Create a detached screen, send a command to it创建一个分离的屏幕,向它发送命令
【发布时间】:2016-04-10 18:20:18
【问题描述】:

我正在尝试做一些被证明非常困难的事情。我想创建一个屏幕会话附加到它(因为这最终将成为一个启动脚本),然后向会话发送一个 bash 命令。

我尝试在新创建的会话中简单地echo Hello。屏幕会话创建得很好,但回声永远不会发生。鉴于以下示例,我希望最终附加到其控制台上有“Hello”的屏幕:

screen -mdS "Test" # Create a screen session, do not attach to it
screen -ls # Confirm that the Test screen session exists
screen -S "Test" -X "echo Hello^M" # Send a command through
screen -R # Reconnect - notice the command didn't execute

但是会话中什么都没有——echo 没有被执行。任何指针都非常感谢?!

【问题讨论】:

标签: linux bash gnu-screen


【解决方案1】:

正确的调用是

screen -S "Test" <strong>-X stuff</strong> 'echo Hello\r'

【讨论】:

  • 哦,效果很好!所有这些说“东西”的例子我认为在他们的样本中相当于“废话”,并没有从字面上理解:-}谢谢!
  • 这是一个动词。 “塞进去”。
【解决方案2】:

试试:

screen -S "Test" -X stuff 'echo "Hello"'`echo -ne '\015'`

stuff 是一个屏幕命令:screen docs for stuff command

`echo -ne '\015'` 表示按Enter

我找到了这个解决方案:link

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-18
    • 1970-01-01
    • 2010-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多