Frage Wie kann ich die Eingabeaufforderung "Save workspace image?" In R deaktivieren?


Wenn ich die interaktive R-Shell verlasse, wird jedes Mal eine lästige Eingabeaufforderung angezeigt:

>
>
Arbeitsbereichsbild speichern? [j / n / c]: n

Ich antworte immer "Nein", denn wenn ich meine Arbeit retten möchte, würde ich das tun Vor versuchen zu beenden.

Wie man die Aufforderung los wird?


Hinweis: siehe ?save.image


75
2018-02-14 18:52


Ursprung


Antworten:


Du kannst die --no-save Befehlszeilenargument, wenn Sie R starten, oder Sie können das Argument überschreiben q Funktion:

utils::assignInNamespace(
  "q", 
  function(save = "no", status = 0, runLast = TRUE) 
  {
    .Internal(quit(save, status, runLast))
  }, 
  "base"
)

Fügen Sie den obigen Code in Ihr .Rprofile ein, damit es beim Start für jede Sitzung ausgeführt wird.


61
2018-02-14 19:12



Habe noch nicht die einfachste Linux-Lösung gefunden :)

Auf ubuntu fügen Sie die folgende Zeile hinzu ~/.bashrc:

alias R='R --no-save'

Jedes Mal, wenn Sie die R-Konsole mit starten Rwird es übergeben werden --no-save Möglichkeit.


21
2018-04-01 09:09



Du kannst dem "entkommen"Arbeitsbereichsbild speichern?"Aufforderung mit einem Strg + D.

Also, wenn du es tust Strg + D zweimal in interaktivem R, dann verlassen Sie R, ohne Ihren Arbeitsbereich zu speichern.

(Getestet unter Linux und OS X)


12
2017-11-23 18:38



Wenn Sie Rgui verwenden, klicken Sie mit der rechten Maustaste auf das Symbol, das Sie zum Starten von R verwenden, und klicken Sie auf "Eigenschaften", und fügen Sie --no-save dem Befehl hinzu, der R startet.

(von http://tolstoy.newcastle.edu.au/R/help/05/03/1115.html)

Wenn Sie einen anderen Editor als Rgui verwenden, müssen Sie beim Starten von R --no-save an die R-Befehlszeile übergeben


10
2018-02-14 19:12



Du könntest leicht ein hinzufügen qq() Funktion für die .Rprofile-Datei

 qq <- function(save="no") { q(save=save)}

Ich dachte, dass die Speicheroption mit Optionen verfügbar ist, aber offensichtlich ist Joshuas Antwort am besten.


5
2018-06-28 22:29



Holen Sie das Beste aus beiden Strategien von MREQ und BondedDust:

Standard, um nicht zu speichern, indem Sie die folgende Zeile zu Ihrer ~ / .bashrc hinzufügen:

alias R='R --no-save'

Aber geben Sie sich eine einfache Möglichkeit, beim Beenden zu speichern, indem Sie dies zu ~ / .Rprofile hinzufügen:

qs <- function(save="yes") { q(save=save)}

Also jetzt q() beendet ohne Speichern (oder Aufforderung) aber qs() wird gespeichert und beendet (auch ohne Aufforderung)


4
2018-01-16 19:16



Wie wäre es, wenn Sie die Eingabeaufforderung einfach umgehen, indem Sie tippen? q('no') stattdessen


3
2018-02-15 00:18



Überschreiben Sie die Standardoption für sparen Argument von Verlassen Funktion

formals(quit)$save <- formals(q)$save <- "no"

Lege diese Zeile in .Rprofile

Bearbeiten: hinzugefügt qEs gibt also keine Eingabeaufforderung, egal welche Variante verwendet wird


3
2017-07-05 14:49