[英]Function to clear the console in R and RStudio
我想知道是否有清除 R 中控制台的功能,特別是 RStudio 我正在尋找可以在控制台中輸入的功能,而不是鍵盤快捷鍵。
2010 年的這篇 StackExchange 帖子中已經有人提供了這樣的功能。 不幸的是,這取決於 RCom 包,不能在 Mac OS X 上運行。
cat("\014")
是將CTRL + L發送到控制台的代碼,因此將清除屏幕。
遠比只發送大量回報要好得多。
如果您使用默認的 R 控制台,組合鍵Option + Command + L將清除控制台。
您可以定義以下函數
clc <- function() cat(rep("\n", 50))
然后您可以將其稱為clc()
。
cat("\f")
可能比cat("\014")
更容易記住。
它在 Windows 10 上對我來說工作正常。
shell("cls")
如果在 Windows 上,
shell("clear")
如果在 Linux 或 Mac 上。
( shell()
將命令(或任何字符串)傳遞給主機終端。)
在Ubuntu-Gnome中,只需按CTRL + L即可清除屏幕。
這似乎也適用於 Windows 10 和 7 以及 Mac OS X Sierra。
這是一個函數:
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 包來執行此操作,借鑒了上面的建議。 該包稱為mise
,如“mise en place”。 您可以使用安裝和運行它
install.packages("mise")
library(mise)
mise()
請注意,默認情況下, mise()
還會刪除所有變量和函數並關閉所有圖窗。 要僅清除控制台,請使用mise(vars = FALSE, figs = FALSE)
。
如果您使用默認的 R 控制台CTRL + L
RStudio - CTRL + L
在 linux 中使用system("clear")
清除屏幕。
您可以組合以下兩個命令
cat("\014");
cat(rep("\n", 50))
貓(“\014”)。 這會起作用。 不用擔心
RStudio 的另一個選項是rstudioapi::sendToConsole("\014")
。 即使輸出被轉移,這也會起作用。
sink("out.txt")
cat("\014") # Console not cleared
rstudioapi::sendToConsole("\014") # Console cleared
sink()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.