Masquage de fichiers / dossiers commençant par un point final (point)

35

Windows n'utilise pas la convention point-fichier pour les fichiers cachés. Cependant, de nombreuses applications Windows (principalement opensource / multiplateforme) utilisent des fichiers et des dossiers avec cette convention. Comment puis-je faire en sorte que l'Explorateur Windows masque automatiquement ces fichiers dot?

iglvzx
la source

Réponses:

28

ATTRIB +H /s /d C:\.* est la commande pour cacher quoi que ce soit, répertoires inclus commençant par un point

Cela ne répertoriera pas les fichiers (comme indiqué ci-dessous), mais frappera tous les fichiers auxquels il pourra accéder et appliquera l'attribut Hidden.

Une fois cela fait, vous pouvez vous assurer que les options de dossier sont définies pour masquer les fichiers cachés. Cliquez sur Démarrer , tapez folder optionset appuyez sur Enter. Cliquez sur l' onglet Affichage , puis choisissez Ne pas afficher les fichiers, dossiers ou lecteurs cachés sous Fichiers et dossiers \ Fichiers et dossiers cachés . Appuyez sur Appliquer , puis sur OK (ou simplement sur OK ).

Canadian Luke REINSTATE MONICA
la source
1
seule chose qui suce à ce sujet ... il ne produit rien. Aucun moyen de vérifier quels fichiers il a touchés. = (
Mechaflash
4
une autre chose qui craint, c'est que vous devez le faire manuellement chaque fois que vous obtenez de tels fichiers.
Justinas Dūdėnas
1
mon Usersdossier est toujours si reconnaissant
Mikey
1
Attention: sur les CreateFileappels de fichiers Windows avec CREATE_ALWAYSmais sans FILE_ATTRIBUTE_HIDDENindicateur explicitement spécifié , les opérations échoueront sur les fichiers cachés. Certains outils sont conscients de cela, mais avec certains (désolé, je ne me souviens pas exactement de ce que j'ai eu), cela se produit en silence et le seul problème notable est que les configurations ou les journaux ne sont pas mis à jour. Vérifiez par exemple ici pour plus de détails: stackoverflow.com/a/13215998/116546
drdaeman
7

Simple:

Dans l'Explorateur Windows

  1. Faites un clic droit sur le que .foldervous souhaitez masquer;
  2. Cliquez sur properties, puis sur l' generalonglet;
  3. Cliquez sur hidden.

Terminé.

PS Uniquement vérifié sur Windows 7 Professionnel. PPS J'ai remarqué que votre question demandait de le faire automatiquement. De toute évidence, cela ne suffira pas, mais peut-être que les lecteurs le trouveront utile.

Fred
la source
3

Il est possible en C #, en utilisant System.IO.FileSystemWatcher. Le code serait quelque chose comme ça. Il vous suffit de le compiler et de le placer dans le dossier Démarrage. Mais ce code ne cache pas les fichiers déjà existants. Exécutez donc d'abord le code de Luke, puis ce code. Vous avez besoin des System.IO et 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);
    }
}
Lennart_96
la source
2

Windows masquera les fichiers avec l' indicateur caché ou système . Ou les fichiers peuvent être masqués à l'aide d'ACL. Windows ne masque pas les fichiers en fonction du nom de fichier.

Pour que Windows cache explicitement les fichiers par nom de fichier, vous devez créer explicitement la fonctionnalité. Soit un pilote de système de fichiers (il est courant que les virus aient cette "fonctionnalité"), soit un hack d'extension de shell fonctionnera dans ce cas.

Sur une note latérale, vous pouvez simuler la fonctionnalité en désactivant "afficher les extensions de fichier" sous Options des dossiers, car, dans l'Explorateur, un fichier qui commence par un point est un fichier avec une extension, mais sans nom.

surfasb
la source
2
Windows n'a pas d'option pour masquer toutes les extensions de fichiers. Ceci est la seule option liée: Folder Options> View> [ ] Hide extensions for known file types.
iglvzx
Comme je l'ai dit, pas une vraie fonctionnalité.
surfasb
Masquer les extensions pour les types de fichiers connus ne semble cependant pas masquer ces fichiers. Je les vois toujours répertoriés dans l'explorateur, juste avec un nom vide. Il ne semble pas non plus du tout affecter les dossiers (par exemple. ".Txt" est toujours affiché dans son intégralité). Windows 7.
sqweek
1

Je ne pense pas qu'il existe un moyen de le faire automatiquement, mais vous pouvez essayer d'utiliser la commande ATTRIB pour masquer ces fichiers:

ATTRIB + H

Assurez-vous ensuite que vous avez configuré Explorer pour ne pas afficher les fichiers cachés.

mauvedeity
la source