Elimina la directory cmd
Quando si tratta di svolgere rapidamente le attività quotidiane, la riga di comando può essere tanto potente quanto pericolosa. Prendiamo come esempio i comandi di oggi: il comando rm consente di eliminare (o eliminare) i file. Il comando rmdir fa lo stesso per le directory (note anche come cartelle). Ma attenzione: a differenza di quanto accade quando si eliminano i file dal Finder, non è possibile recuperarli se si utilizzano questi comandi. Tuttavia, se vuoi sfruttare i poteri di Terminale, questo è un comando che non puoi ignorare. Ti mostrerò come aggiungere un backup per assicurarti di eliminare solo i file che vuoi veramente eliminare.
È pericolosamente facile eliminare i file con il comando rm. Ecco un esempio. Dopo aver avviato Terminal (nella cartella / Applicazioni / Utility) digita cd ~ / Desktop per accedere alla directory Desktop. Se hai un file chiamato MyFile.rtf che non vuoi vedere di nuovo, puoi eseguire questo comando:
Se suono inquietante quando parlo dei poteri del comando rm, c’è una buona ragione. Come ho detto prima, questo comando elimina i file; li distrugge. Non puoi riaverli indietro. Non puoi fare clic sull’icona del cestino e recuperare i file che hai cancellato accidentalmente.
La directory di eliminazione di Linux non è vuota
I comandi rm e rmdir rimuovono file e directory su Linux, macOS e altri sistemi operativi simili a Unix. Sono simili ai comandi del e deltree in Windows e DOS. Questi comandi sono molto potenti e hanno alcune opzioni.
È importante notare che i file e le directory eliminati con rm e rmdir non vengono spostati nel Cestino. Vengono immediatamente rimossi dal tuo computer. Se elimini accidentalmente i file utilizzando questi comandi, l’unico modo per ripristinarli è da un backup.
I caratteri jolly possono essere utilizzati per selezionare gruppi di file da eliminare. Il * rappresenta più caratteri e il? rappresenta un singolo carattere. Questo comando eliminerebbe tutti i file di immagine png nella directory di lavoro corrente.
Se una directory o un file è protetto da scrittura, verrà richiesto di confermare l’eliminazione. Per eliminare le directory non vuote e sopprimere queste richieste, utilizzare insieme le opzioni -r (ricorsiva) e -f (forzata).
In questo caso devi stare attento. Fare un errore con il comando rm -rf potrebbe causare la perdita di dati o il malfunzionamento del sistema. È pericoloso e la prudenza è la migliore politica. Per scoprire la struttura delle directory e i file che verranno rimossi dal comando rm -rf, utilizzare il comando tree.
Elimina tutti i file da una directory di Linux
Find può eseguire argomenti con l’opzione -exec per ogni corrispondenza trovata. È un meccanismo consigliato perché può gestire correttamente i percorsi con nuovi spazi/linee e altri caratteri al loro interno. Dovrai rimuovere il contenuto della directory prima di poter rimuovere la directory stessa, quindi usa -r con il comando rm per ottenere ciò.
Nota che find continuerà a provare a fare una ricorrenza sulle directory denominate dirname, il che non è realmente necessario e richiederà del tempo aggiuntivo. A seconda della struttura della tua directory, puoi evitarlo con l’opzione –depth find. Inoltre, se hai una struttura di directory come dirname / foo / dirname otterrai errori “Nessun file o directory di questo tipo” da rm. Per sopprimere gli errori puoi reindirizzare stderr a / dev / null o utilizzare il flag -f (force) con rm.
Nota che oltre a eliminare le directory ‘.svn’ (e il loro contenuto), verranno eliminati anche tutti i file o le directory il cui nome inizia con ‘.svn’. Ad esempio, l’utilizzo di -path ‘* /.Git *’ eliminerà anche ‘.gitignore’ e ‘.gitattribute’ oltre a ‘.git /’. Per evitare ciò e rimuovere solo le directory con quel nome esatto, usa
Elimina terminale directory
Find può eseguire argomenti con l’opzione -exec per ogni corrispondenza trovata. È un meccanismo consigliato perché può gestire correttamente i percorsi con nuovi spazi/linee e altri caratteri al loro interno. Dovrai rimuovere il contenuto della directory prima di poter rimuovere la directory stessa, quindi usa -r con il comando rm per ottenere ciò.
Nota che find continuerà a provare a fare una ricorrenza sulle directory denominate dirname, il che non è realmente necessario e richiederà del tempo aggiuntivo. A seconda della struttura della tua directory, puoi evitarlo con l’opzione –depth find. Inoltre, se hai una struttura di directory come dirname / foo / dirname otterrai errori “Nessun file o directory di questo tipo” da rm. Per sopprimere gli errori puoi reindirizzare stderr a / dev / null o utilizzare il flag -f (force) con rm.
Nota che oltre a eliminare le directory ‘.svn’ (e il loro contenuto), verranno eliminati anche tutti i file o le directory il cui nome inizia con ‘.svn’. Ad esempio, l’utilizzo di -path ‘* /.Git *’ eliminerà anche ‘.gitignore’ e ‘.gitattribute’ oltre a ‘.git /’. Per evitare ciò e rimuovere solo le directory con quel nome esatto, usa
Imparentato