我使用Ubuntu 16.04,并且我需要以下tmux
解决方案,因为我想运行一个超时过程,sleep
因为在我的特殊情况下,我不满意at
并遇到了nohup
(合并时nohup-sleep
)的错误。现在,它tmux
似乎是最好的选择,因为它具有自己的无挂机机制,并且在手动使用中实际上运行良好(我问的问题仅在于使我已经可以手动完成的流程自动化)。
我需要的:
我需要一种方法可以一次完成以下3个动作:
- 附加新
tmux
会话。 - 向该会话注入一组准备好的命令,例如
(sleep 30m ; rm -rf dir_name ; exit)
。我特别希望使用多行设置,而不是一排排。 - 在新
tmux
会话中将其完成写为stdin的那一刻执行上面的命令。
换句话说,我想在另一个tmux
专门为此创建的会话中执行代码集,但是要一次完成所有操作。
笔记:
我的目标是在我最初的工作会议上做所有事情(我大部分时间都在工作)。通常,我无意访问新创建的会话,我只想使用自动执行的代码来创建它,仅此而已。
如果可能的话,我希望有一个Heredoc解决方案。我认为这是最有效的。
1.
这样做的方法有两种,一种涉及第一种方法,即创建一个临时脚本(包含代码)并通过创建执行它,第二种方法是heredoc办法。2.
如果第二种方法有效(当每个回显行包含heredoc的每个代码行时),如果它是Bash有效代码,为什么我们应该将其视为黑客?也许是因为Heredoc的行被回显并且在Heredocs中没有定期执行?