2015-08-25 9 views
5

Come posso ottenere lo spazio totale su disco/spazio libero su disco del mio computer Windows?Come ottenere lo spazio su disco della macchina Windows con R?

Se non è presente alcuna funzione R, forse è disponibile un comando di Windows che è possibile utilizzare all'interno della funzione R system ma non è stato possibile trovare tale comando.

+1

Per una soluzione 'system', dare un'occhiata a [Spazio libero in una shell CMD] (http://stackoverflow.com/questions/293780/free-space-in-a-cmd-shell) (il' il comando di dir qui menzionato dovrebbe funzionare). –

risposta

6

Anche se mi trovo davvero difficile credere che una ricerca su Google per windows cmd disk space si avvicinò vuoto per voi, questo dovrebbe fornire le informazioni necessarie w/o la necessità di privilegi di amministratore:

disks <- system("wmic logicaldisk get size,freespace,caption", inter=TRUE) 

disks <- read.fwf(textConnection(disks[1:(length(disks)-1)]), 
     widths=c(9, 13, 13), strip.white=TRUE, stringsAsFactors=FALSE) 

colnames(disks) <- disks[1,] 
disks <- disks[-1,] 
rownames(disks) <- NULL 

disks 

## Caption FreeSpace  Size 
## 1  A:       
## 2  C: 52617023488 63898120192 
## 3  D:       

Proprio ho pensato anche di aggiungere che questa risposta proviene da qualcuno che è principalmente un utente di OS X/Linux.

+0

Non ho usato le parole chiave giuste, immagino ... avrei preferito trovare la risposta direttamente con una ricerca su Google piuttosto che prendere il tempo per scrivere una domanda. Comunque grazie, questo è esattamente ciò di cui ho bisogno! E infatti funziona senza privilegi di amministratore. –

+0

Perché si imposta una lunghezza di 12 per la 3a colonna? I valori della colonna "Dimensioni" avranno sempre almeno la stessa lunghezza di "FreeSpace" no? –

+0

c'è un buffer di 2 spazi tra di loro. il 12 evita qualsiasi possibilità di prendere il inane MS-DOS '\ r''s lungo la corsa. – hrbrmstr