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

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


您可以定义以下函数

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

然后可以将其调用为clc()。


cat("\014")  

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

这比发一大堆退货好多了。


如果您正在使用默认的R控制台,则组合键Option + Command + L将清除控制台。


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

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


Cat(“\f”)可能比Cat(“\014”)更容易记住。

它在Windows 10上运行得很好。


这是一个函数:

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())

我开发了一个R包来实现这一点,借鉴了上面的建议。这个包裹被称为“协定”,就像“就地协定”。您可以使用

install.packages("mise")
library(mise)
mise()

注意,默认情况下,mise()还删除所有变量和函数并关闭所有图形。要清除控制台,请使用mise(vars = FALSE, figs = FALSE)。


您可以将以下两个命令组合使用

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

shell("cls")

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

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


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

RStudio - CTRL + L


在linux中使用system("clear")来清除屏幕。


猫(“\ 014”)。这是可行的。不用担心


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

sink("out.txt")

cat("\014") # Console not cleared

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

sink()