Ocultando arquivos / pastas que começam com um ponto final (período)

32

O Windows não usa a convenção dot-file para arquivos ocultos. No entanto, muitos aplicativos do Windows (principalmente opensource / cross-platform) usam arquivos e pastas com essa convenção. Como posso fazer o Windows Explorer ocultar automaticamente esses arquivos de pontos?

    
por iglvzx 04.12.2011 / 06:18

5 respostas

28

ATTRIB +H /s /d C:\.* é o comando para esconder qualquer coisa, diretórios incluídos que começam com um ponto

Isso não listará os arquivos (como indicado abaixo), mas atingirá todos os arquivos que puder acessar e aplicará o atributo Oculto.

Depois disso, você pode verificar se as opções de pasta estão definidas para ocultar arquivos ocultos. Clique em Iniciar , digite folder options e pressione Enter . Clique na guia Visualizar e, em seguida, escolha Não mostrar arquivos, pastas ou unidades ocultas em Arquivos e pastas \ Arquivos ocultos e pastas . Clique em Aplicar e, em seguida, em OK (ou apenas em OK ).

    
por 11.12.2011 / 17:38
8

Simples:

No Windows Explorer

  1. Clique com o botão direito no .folder que você deseja ocultar;
  2. Clique em properties e, em seguida, clique na guia general ;
  3. Clique em hidden .

Feito.

PS Apenas verificado no Windows 7 Professional. PPS Percebi sua pergunta para fazer isso automaticamente. É claro que isso não vai funcionar, mas talvez os leitores achem útil.

    
por 25.01.2013 / 21:25
3

É possível em C #, usando System.IO.FileSystemWatcher. Código seria algo assim. Basta compilá-lo e colocá-lo na pasta Iniciar. Mas esse código não esconde arquivos já existentes. Então corra primeiro o código de Luke, e do que este código. Você precisa do System.IO e System.Security.Permissions

    [PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
    public static void Run()
    {
        FileSystemWatcher watcher = new FileSystemWatcher();
        watcher.Path = "C:\";
        watcher.IncludeSubdirectories = true;
        watcher.Filter = "*.*";
        watcher.Renamed += new RenamedEventHandler(OnRenamed);
        watcher.Created += new FileSystemEventHandler(watcher_Created);
        watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite | NotifyFilters.FileName | NotifyFilters.DirectoryName;
        watcher.EnableRaisingEvents = true;
        Console.WriteLine("Started...");
        while (true) ;
    }
    static void Check(string filename)
    {
        string name = Path.GetFileName(filename);
        if (name.StartsWith(".") && !File.GetAttributes(filename).HasFlag(FileAttributes.Hidden))
        {
            File.SetAttributes(filename, File.GetAttributes(filename) | FileAttributes.Hidden);
        }
    }
    static void watcher_Created(object sender, FileSystemEventArgs e)
    {
        Check(e.FullPath);
    }
    private static void OnRenamed(object source, RenamedEventArgs e)
    {
        Check(e.FullPath);
    }
}
    
por 11.12.2011 / 17:26
2

O Windows ocultará arquivos com o sinalizador oculto ou sistema . Ou arquivos podem estar ocultos usando o ACL. O Windows não oculta arquivos com base no nome do arquivo.

Para explicitamente ter o Windows para ocultar arquivos por nome de arquivo, você precisará criar explicitamente o recurso. Um driver de sistema de arquivos (costuma ser comum a vírus ter esse "recurso") ou um hack de extensão de shell funcionará nesse caso.

Em uma nota lateral, você pode falsificar o recurso desligando "ver extensões de arquivo" em Opções de Pasta, pois, para o Explorer, um arquivo que começa com um ponto é um arquivo com extensão, mas nenhum nome.

    
por 04.12.2011 / 08:16
0

Eu não acho que haja uma maneira de fazer isso acontecer automaticamente, mas você poderia tentar usar o comando ATTRIB para ocultar esses arquivos:

ATTRIB + H

Em seguida, verifique se você configurou o Explorer para não mostrar arquivos ocultos.

    
por 10.12.2011 / 16:47