[问题] 用 Ruby 完成类似 nohup 的功能

楼主: Neisseria (Neisseria)   2015-07-09 23:18:50
小弟有一些耗时较长的终端机的命令需执行
因为命令比较长,又要重复执行很多次,每次改一点点地方
所以想包成 script 来执行
另外,我是透过远端连线执行这些命令
我目前的习惯是透过 nohup 把命令挂在背景
本来想用 Ruby script 完成这项事情
但是卡在不知道以 Ruby 做到 nohup 的功能
目前是包成 Bash script 来解决,当然是可以用
但我其实不太喜欢写 Bash script,觉得语法怪怪的,写起来很卡
所以上来问问各位大大 the Ruby way
需求
1. 可以背景执行命令
2. 可以在 logout 后持续 run 该命令
3. 可以保存 stdout 和 stderr,方便以后检视
感谢各位大大耐心地回答
作者: AIGecko (师大猫耳控)   2015-07-10 00:21:00
system("nohup #{cmd} </dev/null >&#{err} >#{out}")
作者: CP64 (( ̄▽ ̄#)﹏﹏)   2015-12-25 23:31:00
先在开头把 STDOUt STDERR 做 reopen 到档案去最后直接用 exec 跑原本要执行的指令即可

Links booklink

Contact Us: admin [ a t ] ucptt.com