Como apagar a lixeira via terminal (com comando mv)? [duplicado]

4

Gostaria de saber como excluir um arquivo e / ou movê-lo para a lixeira com o comando mv ?

Eu sei onde o lixo está localizado, então eu tentei com este comando para movê-lo para o lixo:

mv somefile /home/username/.local/share/Trash

este comando funciona bem, mas quando eu abro a lixeira no launcher ele ainda está vazio. Eu posso desfazer esse arquivo excluído no local original com:

mv /home/username/.local/share/Trash/somefile ~/

mas se esse local /home/username/.local/share/Trash não for para a Lixeira, onde o arquivo será movido?

Sei que rm excluirá permanentemente o arquivo e não o enviará para uma pasta de lixeira e não haverá sinalizador em man rm para excluir o arquivo da lixeira.

    
por αғsнιη 14.09.2014 / 15:37

2 respostas

11

Informações sobre o diretório Lixeira:

~/.local/share/Trash contém dois diretórios chamados info e files .

  • ~/.local/share/Trash/files contém arquivos originais.
  • ~/.local/share/Trash/info contém arquivos (extensão: .trashinfo ) que possuem informações sobre o caminho e a data de exclusão dos arquivos.

Portanto, se você quiser usar o comando mv , siga o comando:

mv somefile ~/.local/share/Trash/files

Mas não é recomendado usar o método acima para mover arquivos para o lixo. (como comentado aqui )

Você pode instalar a linha de comando da lixeira, ou seja, trash-cli seguindo o comando:

sudo apt-get install trash-cli

E aqui estão os comandos disponíveis para o lixo:

$ apropos trash
gvfs-trash (1)       - Move files or directories to the trash
restore-trash (1)    - Restore for Command line trash utility.
trash (1)            - Command line trash utility.
trash-empty (1)      - Empty for Command line trash utility.
trash-list (1)       - List trashed files.
trash-put (1)        - Command line trash utility.

Você pode mover / colocar arquivos no lixo seguindo o comando:

  1. trash-put somefiles
  2. ou gvfs-trash somefiles

Liste lixeira por comando: trash-list
arquivos Restaurar pelo comando: restore-trash
Esvaziar lixo pelo comando: trash-empty

Visite também esta Pergunta.

    
por Pandya 14.09.2014 / 15:48
12

Você pode usar gvfs-trash em vez de mv

gvfs-trash somefile

O motivo pelo qual você não conseguiu ver o arquivo depois de movê-lo para ~ / .local / share / Lixeira é que há uma estrutura de diretório adicional abaixo, por exemplo,

  • ~/.local/share/Trash/files para conter o arquivo real da lixeira; e
  • ~/.local/share/Trash/info contendo metadados, como o local original

Embora você possa ter usado

mv somefile ~/.local/share/Trash/files

em cujo caso somefile estaria visível na lixeira, não seria possível usar a função nautilus / gvfs Restore para desfazer a exclusão do arquivo, devido à falta de info metadata - você precisaria saber e manualmente mv o arquivo para o local original. Nesse sentido, apenas gvfs-trash é a linha de comando exata equivalente a lixeira de um arquivo via nautilus.

    
por steeldriver 14.09.2014 / 15:44