Czy ktoś może powiedzieć, jak mogę przerwać działanie skryptu w R?
Powiedzmy, że mam nieskończoną pętlę lub inny problem i chcę zatrzymać działanie skryptu. Czy istnieje polecenie klawiaturowe, które to robi?
Jeśli to pomaga, w Pythonie jest to Ctrl + c. Próbowałem tego w R i nie udało się :).
Poszukałem tego pozornie prostego pytania, ale nie mogłem znaleźć odpowiedzi.
Z góry dziękuję.
Odpowiedzi:
Odpowiedź własna (podsumowanie komentarzy i odpowiedzi innych osób):
W
RStudio
,Esc
działa, na Windowsie, Macu i Ubuntu (i sądzę, że w innych dystrybucjach Linuksa).Jeśli proces jest uruchamiany w, powiedzmy, powłoce ubuntu (i nie jest to
R
specyficzne), na przykład przy użyciu:Ctrl + c
zabija procesCtrl + z
zawiesza procesZabójstwa w powłoce R
Ctrl + C
pomagają ci uciecźródło
Esc
nie można przerwać procesów intensywnie korzystających z pamięci.Control-C działa, chociaż w zależności od tego, co robi proces, może nie działać od razu.
Jeśli korzystasz z systemu uniksowego, jedną rzeczą, którą robię, jest Ctrl-z, aby wrócić do wiersza poleceń, a następnie wydać polecenie „zabić” identyfikatorowi procesu.
źródło
Wypróbuj Ctrl + z Ale to zabije proces, a nie zawiesi go.
źródło
Wiem, że to jest stare, ale napotkałem ten sam problem. Jestem na komputerze Mac / Ubuntu i przełączam się tam iz powrotem. Odkryłem, że samo wysłanie prostego sygnału przerwania do głównego procesu R robi dokładnie to, czego szukasz. Uruchomiłem skrypty, które działały tak długo, jak 24 godziny, a przerwanie sygnału działa bardzo dobrze. Powinieneś być w stanie uruchomić kill w terminalu:
$ kill -2 pid
Możesz znaleźć pid, uruchamiając
Nie jestem pewien co do systemu Windows, ponieważ nigdy mnie tam nie ma, ale nie wyobrażam sobie, że nie ma takiej opcji w wierszu polecenia / Menedżerze zadań
Mam nadzieję że to pomoże!
źródło