用于清除R和RStudio中的控制台的功能

时间:2013-01-10 14:37:50

标签: r

我想知道是否有一个功能来清除R中的控制台,特别是RStudio我正在寻找一个可以在控制台中键入的功能,而不是键盘快捷键。

有人已经在this StackExchange post from 2010中提供了这样的功能。不幸的是,这取决于RCom软件包,不能在Mac OS X上运行。

13 个答案:

答案 0 :(得分:492)

cat("\014")  

是将 CTRL + L 发送到控制台的代码,因此将清除屏幕。

远远不只是发送大量的回报。

答案 1 :(得分:100)

如果您使用默认的R控制台,则组合键选项 + 命令 + L 将清除控制台。

答案 2 :(得分:32)

您可以定义以下功能

clc <- function() cat(rep("\n", 50))

然后您可以将其称为clc()

答案 3 :(得分:24)

Ubuntu-Gnome 中,只需按 CTRL + L 即可清除屏幕。

这似乎也适用于Windows 10和7以及Mac OS X Sierra。

答案 4 :(得分:20)

cat("\f")可能比cat("\014")更容易记住。

在Windows 10上它适用于我。

答案 5 :(得分:11)

这是一个功能:

clear <- function() cat(c("\033[2J","\033[0;0H"))

然后您可以简单地调用它,因为您调用任何其他R函数clear()

如果您只想输入clear(而不是必须输入clear(),即使用括号),那么您可以

clear_fun <- function() cat(c("\033[2J","\033[0;0H"));
makeActiveBinding("clear", clear_fun, baseenv())

答案 6 :(得分:11)

shell("cls")如果在Windows上,

shell("clear")如果在Linux或Mac上。

shell()将命令(或任何字符串)传递给主机终端。)

答案 7 :(得分:10)

我开发了一个R包,可以借鉴上面的建议。该包被称为mise,如“mise en place”。您可以使用

安装和运行它
install.packages("mise")
library(mise)
mise()

请注意,mise()也会删除所有变量和函数,并默认关闭所有数字。要清除控制台,请使用mise(vars = FALSE, figs = FALSE)

答案 8 :(得分:3)

您可以合并以下两个命令

cat("\014"); 
cat(rep("\n", 50))

答案 9 :(得分:3)

在Linux中,使用system("clear")清除屏幕。

答案 10 :(得分:0)

如果您使用默认的R控制台 CTRL + L

RStudio - CTRL + L

答案 11 :(得分:0)

cat(“ \ 014”)。这会起作用。不用担心

答案 12 :(得分:0)

RStudio的另一个选项是rstudioapi::sendToConsole("\014")。即使输出被转移,这也将起作用。

sink("out.txt")

cat("\014") # Console not cleared

rstudioapi::sendToConsole("\014") # Console cleared

sink()