2013-01-08 21 views
20

Powiel możliwe:
Automatically Delete Files/Folders in Rjak usunąć plik za pomocą R?

chciałbym wiedzieć, czy istnieje sposób na badania, aby sprawdzić się, czy plik jest w moim bieżącym katalogu, a jeśli jest tam wtedy program usuwa?

Wiem, że inne języki mają bezpośredni dostęp do funkcji systemu operacyjnego, aby wykonać to zadanie, ale jestem trochę wątpliwy, jeśli R ma taką możliwość.

Dzięki

+0

typu '? system' przy znaku zachęty konsoli. –

Odpowiedz

12

Jednym z powodów R nie może zostać bezpiecznie wystawione na zewnętrznych użytkowników jest to, że oferuje pełny dostęp do obiektów systemowych. Oprócz funkcji list.files, list.dirs i file.remove, funkcja system umożliwia dostęp do niemal dowolnego exploita jaki można sobie wyobrazić.

+0

dzięki @DWin Pomyślałem, że R zamyka te możliwości ochrony problemów – Layla

+2

Myślę, że downvotes (niekoniecznie z @Dwin) są, ponieważ nie powinno być * zbyt * trudne do znalezienia tych odpowiedzi przez googling/searching Stack Overflow. Właściwie nie uważam, że wskazany link (który można znaleźć przez wyszukanie SO dla '[r] delete file') jest dokładnym duplikatem, ale prawdopodobnie odpowiedziałby na twoje pytanie. –

+0

@Manolo: Nie rozumiem o co ci chodzi. Nie znam żadnej rutynowej metody "zamykania" tych możliwości i widzę powtarzające się ostrzeżenia na liście dyskusyjnej r-devel przed ujawnieniem interfejsu R bezpośrednio na zewnątrz niezaufanym użytkownikom. –

51

Jak o:

fn <- "foo.txt" 
if (file.exists(fn)) file.remove(fn) 

O ile mi wiadomo, to jest stałe, niepodlegające zwrotowi (czyli nie „przenieść do kosza”) na wszystkich platformach ...

+0

Czy to jest trwałe usuwanie lub usuwanie "przenieś do kosza"? – derp92

Powiązane problemy