Masquer les fichiers dot dans Windows


26

Existe-t-il un moyen pour que Windows masque automatiquement tout fichier qui est préfixé par un point (par exemple ".svn"), comme cela se fait sous Linux?

Réponses:


19

Après quelques problèmes (la commande attrib n'autorise pas certains caractères génériques), j'ai trouvé cette ligne:

@for %%X in (.*.*) do attrib +h %%X

Il suffit de lui mettre un fichier batch (.bat) et il fait l'affaire (pour ce répertoire).

Si vous le souhaitez pour quelques directoires, réglez-le simplement pour qu'il s'exécute une fois par jour sur ces répertoires.

J'espère que c'est ce dont vous avez besoin.


5
Si vous voulez faire des répertoires, ajoutez une deuxième ligne@for /d %%X in (.*.*) do attrib +h %%X
Brian B

Vous pouvez l'exécuter directement à partir de cmd, juste un cd vers le dossier parent que vous souhaitez, puis l'exécuter sans double pourcentage, un seul:> @for / D% X in (. *) Do attrib + h% X
Sergio Abreu

meilleure réponse que j'ai trouvée
roberto tomás

6

En utilisant Powershell, enregistrez les éléments suivants dans un fichier de script (par exemple hidedotfiles.ps1) et exécutez-le chaque fois que vous ne souhaitez pas masquer les fichiers de points.

Bien sûr, le one-liner suivant peut être simplifié en utilisant des alias et "-f pour" -force "et" -r "pour" -recurse "mais pour être instructif, je l'ai écrit en pleine forme:

Get-ChildItem "C:\" -recurse -force | Where-Object {$_.name -like ".*" -and $_.attributes -match 'Hidden' -eq $false} | Set-ItemProperty -name Attributes -value ([System.IO.FileAttributes]::Hidden)

Fondamentalement, Get-ChildItem -recurse -force récupère tous les éléments et effectue une recherche récursivement dans tous les dossiers, forçant les éléments masqués à apparaître. Ensuite, nous recherchons les fichiers et les dossiers qui commencent par le point et sélectionnons uniquement les fichiers qui ont un attribut masqué. Après avoir répertorié tous les fichiers, nous définissons leurs attributs sur masqués à l'aide de Set-ItemProperty.


1
Les deux Where-Objectet Set-ItemPropertyest inutile. Cela peut tout aussi bien se faire comme Get-ChildItem ".*" -Recurse -Force | ForEach-Object { $_.Attributes += "Hidden" }.
Tom A. Vibeto

4

Pour masquer tous les fichiers / répertoires de points sur un disque (plutôt que dans un seul répertoire), je trouve que cette réponse fonctionne mieux:

ATTRIB +H /s /d C:\.*

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.