我正在远程会话的窗口中启动R
(交互式程序) :screen
ssh me@..
screen -S R_ProjectName
R
在R会话中,我想break
执行。通常,这将通过ctrl+进行c。
但是,该命令正在提交到screen
而不是提交到R
。在屏幕窗口内中断程序的正确方法是什么?
澄清一下,我并不打算终止该R
进程。相反,ctrl+c将用于手动跳出(例如)for
循环。
我正在连接到 Ubuntu 13.04 的 Mac OS X 上的 iTerm2 中工作
答案1
要退出,R
通常使用命令q()
来退出正在运行的实例。
例子
运行R。
$ R
坐在 R 提示符下:
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
[Previously saved workspace restored]
>
现在退出:
> q()
Save workspace image? [y/n/c]: n
$
中断正在运行的 R 命令
如果您已经运行了某些内容R
并想要中止它,Ctrl+C通常是完成此操作的方法。如果这不起作用,您可能想尝试Ctrl+ \。
如果上述方法都不起作用,您可能会幸运地尝试向正在运行的进程发送信号R
。
$ kill -USR1 <pid of R>
-or-
$ pkill -USR1 R
第二种形式将终止所有正在运行的R
进程,但使您不必查找 PID。
参考
答案2
ps -A | grep R
您可以通过运行然后获取进程ID kill pid
。