Onde está a pasta Lixeira no Ubuntu/Windows (WSL)?

Onde está a pasta Lixeira no Ubuntu/Windows (WSL)?

estou usandoUbuntu no Win10, mas não consigo encontrar a pasta da lixeira, mesmo quando uso o comando

mv ~/.Trash/foo ~/
mv: cannot stat '/home/man/.Trash/foo': No such file or directory

Minha pergunta é como posso abrir a pasta de lixo no Ubuntu/Win10?

Responder1

Lixoestá localizado em ~/.local/share/Trash, pelo menos no Ubuntu. ~/.local– ou mais precisamente, ~/.local/share– é onde os programas compatíveis com XDG armazenam dados do usuário (por exemplo, fontes, mensagens de correio) de acordo com oEspecificação do diretório base XDG.

Ubuntu no WSL fornece apenas umterminal e sem GUI por padrão.

Sempre que um arquivo é excluído de um gerenciador de arquivos gráfico no Ubuntu como Nautilus ou Thunar, eles são movidos para o formato ~/.local/share/Trash. Os arquivos geralmente são excluídos usando rmo terminal, quenãomover-los para a pasta Lixeira.

Portanto, não há pasta de lixo no WSL, a menos que você use um gerenciador de arquivos gráfico do Linux.

Responder2

Meu WSL (Ubuntu-20.04) não tinha uma pasta ~/.local/share/Trash. Eu segui as instruções aqui (https://github.com/sindresorhus/trash) e instalado trashe trash-clicom npm.

Coisas como essas funcionam agora!

[username@host]$ tldr trash
trash
A CLI for managing your trashcan / recycling bin.More information: https://github.com/andreafrancia/trash-cli.

 - Delete a file (send to trash):
   trash {{path/to/file}}

 - List files in trash:
   trash-list

 - Restore file from trash:
   trash-restore

 - Empty trash:
   trash-empty

 - Empty trash, keeping files trashed less than {{10}} days ago:
   trash-empty {{10}}

 - Remove all files named 'foo' from the trash:
   trash-rm foo

 - Remove all files with a given original location:
   trash-rm {{/absolute/path/to/file_or_directory}}

Dica:https://github.com/tldr-pages/tldré uma ferramenta muito legal para obter exemplos práticos de comandos que as páginas de manual geralmente não possuem.

Responder3

A pasta Lixeira no Ubuntu é normalmente fornecida por gio(Gnome IO) e GVfs (o Gnome Virtual Filesystem). Embora aplicativos como o Nautilus atuem no GVfs para acessar a lixeira, isso também pode ser feito diretamente da linha de comando no WSL ou Ubuntu Server, sem qualquer GUI, usando a gioferramenta de linha de comando.

Istofaz, no entanto, exigem uma sessão de usuário D-Bus, que não é executada automaticamente no WSL, pois (a) não há Systemd e (b) nenhum conceito de "login" durante o qual iniciar os serviços do usuário.

Embora gioo D-bus esteja instalado por padrão na distribuição WSL Ubuntu, você precisa adicionar o gvfspacote (pelo menos no WSL):

sudo apt install gvfs

Então você precisa iniciar seu shell com suporte D-Bus. Isso pode ser feito de várias maneiras, mas talvez a melhor opção seja alterar o comando de inicialização do WSL (no Terminal Windows ou em outro lugar) para:

wsl ~ -e dbus-launch bash # Or your preferred shell

Neste ponto, você pode usar a Lixeira na linha de comando do WSL. Exemplo:

touch "a test file"
gio trash "a test file"
gio list Trash://
ls -lah ~/.local/share/Trash/files
gio trash --empty
gio list Trash://
ls -lah ~/.local/share/Trash/files

informação relacionada