簡體   English   中英

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

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM