2012-08-16 11 views
9

Chcę, aby R zamykał mój komputer po mojej (rozległej) symulacji i zapisywaniu wyników, czy to możliwe?Wyłączanie systemu Windows po symulacji

+4

Powinieneś ostrożnie zapisywać wyniki samodzielnie. –

+0

@ RomanLuštrik Zapewnia porady mądre poza jego latami. Jeśli * musisz * zamknąć przed ręcznym zapisaniem, zapisz tymczasowy plik .Rd gdzieś ze wszystkimi wynikami pośrednimi. Będziesz strasznie zirytowany, jeśli popełnisz drobny błąd, konwertując wyniki wewnętrzne do ładnego czystego zestawu danych, co spowoduje, że nie zostanie zapisany. –

+0

Symulacja i zapisywanie wyników, a niż wyłączanie, anwsers poniżej jest to, co chciałem. – Maciej

Odpowiedz

10

Tak, spójrz na funkcję shutdown w opakowaniu fun.

Flagi dla polecenia systemowego shutdown zależą od systemu operacyjnego, funkcja po prostu wywołuje odpowiednio oznaczone polecenie.

fun::shutdown 

function (wait = 0) 
{ 
    Sys.sleep(wait) 
    ifelse(.Platform$OS.type == "windows", shell("shutdown -s -t 0"), 
     system("shutdown -h now")) 
} 
+0

Dziękuję, to powinno załatwić sprawę. – Maciej

8

R może wysyłać polecenia do systemu z ?system, a więc wszystko, co jest wymagane dla Windows można zrobić z tym:

http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/shutdown.mspx?mfr=true

R ma .Last() funkcję kontrolowanego przez quit() (lub q()) z jego argumentem runLast, więc tutaj wysyłane są polecenia wyłączania poprzez system, tak aby pojawiły się po wyjściu R. Zapisywanie obiektów za pomocą R jest wykonywane za pomocą save lub save.image, chociaż istnieje również domyślna opcja zapisywania z quit().

+0

Dziękuję za te informacje, przyjrzę się tym opcjom, może niektóre z nich będą przydatne. – Maciej

Powiązane problemy