Os arquivos não estão sendo enviados para o lixo, mas são excluídos permanentemente

1

Quando inicializei meu computador, notei:

  • que o ícone da lixeira estava faltando no Gerenciador de arquivos;
  • esta mensagem quando tentei excluir um arquivo:

Are you sure that you want to permanently delete "testFile"?
If you delete a file, it is permanently lost.

  • que não posso restaurar arquivos já excluídos para os locais anteriores. Eu posso fazer isso manualmente, mas não há recurso de restauração

Eu cansei apt-get update , apt-get update , apt-get update --fix-missing para tentar consertar qualquer coisa quebrada.

Tudo estava funcionando bem ontem. No entanto, tenho trabalhado em um projeto java para enviar arquivos para o lixo. Eu fiz isso há cerca de um mês, então não tenho certeza se é relevante, mas aqui está o código de teste:


public class SendToTrashTest 
{
    public static void main(String... args)
    {
        try {
            File f=new File("test11");
            f.createNewFile();
            sendToTrash(f);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    public static void sendToTrash(File f)
    {
        try {
            String s[]=f.getAbsolutePath().split(File.separator);
            String baseName=s[s.length-1],name=baseName;
            File trashInfoFile=new File(System.getProperty("user.home")+"/.local/share/Trash/info",name+".trashinfo");
            //handles duplicate files
            for(int i=2;trashInfoFile.exists();i++)
            {
                name=baseName+="."+i;
                trashInfoFile=new File(System.getProperty("user.home")+"/.local/share/Trash/info",name+".trashinfo");
            }           
            //moves file to trash
            File trashFile=new File(System.getProperty("user.home")+"/.local/share/Trash/files",name);
            Files.move(f.toPath(), trashFile.toPath(), StandardCopyOption.REPLACE_EXISTING);

            //creates trash info file which is used to restore the trash file
            DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            Calendar cal = Calendar.getInstance();
            trashInfoFile.createNewFile();
            PrintWriter out=new PrintWriter(trashInfoFile);
            out.println("[Trash Info]");
            out.println("Path="+f.getAbsolutePath());
            //eg deletetion date: DeletionDate=2014-03-01T23:38:18
            out.println("DeletionDate="+dateFormat.format(cal.getTime()).replace(" ", "T"));
            out.close();
        }
        catch (IOException e) {
            e.printStackTrace();
        }

    }
}

Eu não tenho idéia de como consertar meu problema, então qualquer ajuda seria bem vinda e obrigado antecipadamente.

    
por TAAPSogeking 30.03.2014 / 15:52

1 resposta

1

Abra o gerenciador de arquivos nautilus e goto edit = > preferências = > Comportamento

Na lixeira, selecione essa opção

Espero que isso ajude

    
por Sudheer 20.05.2014 / 06:31