Il comando rmdir
viene utilizzato per rimuovere le directory vuote. Se tenti di rimuovere una directory non vuota con questo comando, riscontrerai l’errore Rmdir Directory Not Empty .
Questo è un comportamento previsto, ma alcuni utenti hanno segnalato casi in cui hanno riscontrato questo errore nonostante l’utilizzo rmdir
su una directory vuota. Ciò accade a causa di motivi come errori del file system o collegamenti simbolici interrotti.
Abbiamo dettagliato vari modi per risolvere o aggirare questo errore su entrambi i sistemi Linux e Windows nelle sezioni seguenti.
Se volete continuare a leggere questo post su "[page_title]" cliccate sul pulsante "Mostra tutti" e potrete leggere il resto del contenuto gratuitamente. ebstomasborba.pt è un sito specializzato in Tecnologia, Notizie, Giochi e molti altri argomenti che potrebbero interessarvi. Se desiderate leggere altre informazioni simili a [page_title], continuate a navigare sul web e iscrivetevi alle notifiche del blog per non perdere le ultime novità.
Sommario
Correggi l’errore Rmdir Directory Not Empty su Linux
La soluzione più semplice è utilizzare il comando rm
invece di rmdir
. Se questa soluzione alternativa non ti piace, o anche il comando rm non funziona, il resto delle soluzioni sarà utile.
Usa il comando rm
La sintassi di base per il comando rm è rm
. Il flag -d rimuove la directory se è vuota. Ma nel caso di directory non vuote, puoi utilizzare il flag -r per eliminare in modo ricorsivo la directory specificata e il suo contenuto.
- Ad esempio, ecco un esempio di base:
rm -r directory
- Per forzare l’eliminazione di una directory, aggiungi il flag -f come tale:
rm -rf directory
- Se il percorso o il nome della directory contiene spazi, utilizzare le virgolette “” come tali:
rm -rf “directory”
- Aggiungi sudo per risolvere eventuali problemi di autorizzazione in quanto tali:
sudo rm -rf directory
Infine, assicurati di non utilizzare sudo rm -rf /
in quanto ciò causerebbe l’eliminazione del contenuto della directory principale, ovvero di ogni filesystem montato.
Elimina tramite GUI
Quando le cose non funzionano nella GUI, passiamo alla riga di comando. Per quanto insolito possa sembrare, le cose sono l’opposto in questo caso. Numerosi utenti hanno segnalato che l’eliminazione della cartella tramite il File Browser ha funzionato per loro. Vale la pena provarlo prima di verificare le altre soluzioni.
Controlla il file system
Gli errori del file system sono un motivo comune per l’eliminazione dei file e problemi simili. Pertanto, l’utilizzo dell’utilità fsck
(File System Consistency Check) può essere utile. Ecco i passaggi necessari per questo:
- Usa il comando
df -h
e prendi nota del file system su cui vuoi eseguirefsck
. - Prendiamo
/dev/sda4
come esempio. Utilizzare il comandosudo umount /dev/sda4
per smontarlo. Se si tratta di un filesystem root, dovrai eseguire l’avvio da un CD live per poterlo smontare. - Successivamente, usa
sudo fsck /dev/sda4
e accetta le richieste per approvare le azioni di riparazione. - Al termine della riparazione, utilizzare il comando
sudo mount /dev/sda4
per rimontare il dispositivo e verificare se il problema è stato risolto ora.
Elimina dal file server
Ci sono stati casi in cui non è stato possibile eliminare la directory perché faceva parte di un filesystem montato con CIFS (Samba). Poiché c’era un file che era un collegamento simbolico interrotto, non ne ha parlato.
Su CIFS, non saresti in grado di vederlo e quindi potresti presumere erroneamente che la directory sia vuota. In tali casi, sarà necessario eliminare il file direttamente dal file server.
Correzioni dei nodi
Gli utenti hanno segnalato casi in cui la directory era aperta in un’app node.js o in cui un server del nodo accedeva periodicamente ai file nella directory, causando l’esistenza costante di metafile minori all’interno della directory.
In tali casi, la chiusura dell’applicazione o del server che sta accedendo alla directory in questo momento risolverà il problema.
Correggi la directory Rmdir non vuota su Windows
Sebbene l’applicazione sia leggermente diversa, l’idea alla base della correzione di questo errore su Windows è molto simile ai metodi elencati per Linux.
Risolvi problemi comuni
Innanzitutto, assicurati che nessun processo stia attualmente accedendo alla directory . Inoltre, assicurati di non provare a eliminare la directory in cui ti trovi attualmente, poiché ciò richiederebbe anche questo errore. In questi casi, passare a una directory diversa prima di provare.
L’utilizzo dell’utilità CHKDSK per risolvere eventuali problemi del file system ha risolto questo errore per numerosi errori. Puoi fare lo stesso con il comando chkdsk
.
Risolvere l’errore
Il flag /s di Rmdir ha lo scopo di consentire di eliminare la directory specificata e tutte le sottodirectory e i file. Puoi provare un paio di cose nei casi in cui non funziona come previsto.
È possibile eliminare il contenuto della directory prima di eliminare la directory stessa come tale:
del /f /s /q directory 1>nulrmdir /s /q directory
In alternativa, puoi anche provare a ripetere l’operazione come mostrato di seguito. Supponendo che non ci siano problemi di autorizzazione, dovresti essere in grado di eliminare la directory :
rmdir /s /qc:directory
if exist c:directory rmdir /s /qc:directory