在分离的 tmux 会话中运行命令

Acc*_*yyc 33 shell tmux

这可能很简单,但我真的不知道你是如何做到的。我已经阅读了手册页并在没有结果的情况下进行了谷歌搜索。

问题:如何在分离的 tmux 窗口中运行命令?

示例:我希望我的分离窗口 'foo' 运行 'ls',但我想从另一个终端执行此操作。

我试过这样的东西: 'tmux -t foo ls' 没有结果。

841*_*104 49

命令是send. send是一个关键序列,因此请相应地对待它(例如,您可能需要ENTER)。目标用 指定-t。您可能需要 foo.0 或 foo.1,具体取决于您希望点击的窗格。

tmux send -t foo.0 ls ENTER

send是 的缩写send-keys,它位于手册页中,但在那一英里的文本中可能有点难以找到。

  • 请注意,要针对特定​​会话中的特定窗口,请用冒号分隔它们 => `tmux send-keys -t foosession:foo.0 ls ENTER` (3认同)
  • 如果你想在单词之间发送空格,你应该用两个撇号将命令括起来。ENTER 命令应该仍然在外面。这在 UBUNTU 16.04 上对我有用:`tmux send -t session_name 'echo durp'` ENTER (3认同)