Perché il comando 'rm' non esegue il dump del file nel Cestino?

4

Usando il comando rm 'filename' , ho notato che il file non è effettivamente depositato nel cestino. Mi rendo conto che questo non sta rimuovendo completamente il file dal computer, tuttavia sono perplesso sul motivo per cui non dovrebbe apparire nel cestino?

In breve:

Perché il comando 'rm' non deposita il file nel cestino.

    
posta user4493605 06.07.2015 - 13:31
fonte

3 risposte

10

rm è un comando Unix standard e Unix non ha sempre il cestino. A livello di programmazione, l'API BSD non ha una chiamata di sistema per cestinare un file, Apple fornisce quelli a un livello più alto.

Hai anche bisogno di un comando che cancelli i file, ad es. per rimuoverli dalla spazzatura e rm sembra esserci. Hai bisogno di un altro comando per mettere un file nel cestino.

    
risposta data 06.07.2015 - 13:47
fonte
3

In realtà quando si utilizza 'rm' si sta cancellando il file direttamente. Quando elimini un file dal Finder, lo sposta effettivamente nel Cestino, ovvero non lo elimina.

Se vuoi spostare il file nel Cestino invece di eliminarlo, prova:

mv fileName ~/.Trash/

Ciò che fa è spostare il file chiamato fileName nel cestino dell'utente. Il '~' indica la directory dell'utente e .Trash è il cestino (il punto prima di Cestino significa che si tratta di un file nascosto). Dopo aver provato questo comando, apri il cestino dal finder e il tuo file dovrebbe trovarsi lì.

Inoltre, se vuoi giocare con i file ti consiglio di usare file fittizi. Puoi facilmente creare file usando il comando touch che crea un file vuoto se non esiste:

touch newFile

Quindi se vuoi testare la mia soluzione dovresti farlo (dove $ è il prompt):

$touch newFile
$mv newFile ~/.Trash/

E dovresti vedere newfile nel Cestino.

    
risposta data 07.07.2015 - 17:20
fonte
1

Potresti voler usare rmtrash (disponibile su link o usando homebrew), che sposta un file sul spazzatura.

    
risposta data 06.02.2017 - 19:16
fonte

Leggi altre domande sui tag