web-dev-qa-db-fra.com

Recherchez un fichier avec Wildcards dans le chemin à l'aide de la ligne de commande Windows

Comment puis-je rechercher des fichiers dans la ligne de commande Windows, en utilisant des caractères génériques comme celui-ci?

C:\Users\*\AppData\Local\*.txt
10
Sakher

Windows PowerShell peut le faire facilement.

Get-ChildItem C:\Users\*\AppData\Local\*.txt

Si vous voulez inclure des sous-dossiers:

Get-ChildItem C:\Users\*\AppData\Local\*.txt -recurse

En ce qui concerne les fichiers cachés (etc.), PowerShell's help Get-ChildItem dit:

Par défaut, Get-Childitem obtient des articles non cachés, mais vous pouvez utiliser les paramètres de répertoire, de fichier, de masqué, de lecture et de système pour obtenir uniquement des éléments avec ces attributs. Pour créer une recherche d'attribut complexe, utilisez le paramètre Attributs. Si vous utilisez ces paramètres, Get-Childitem n'atteignez que les éléments répondant à toutes les conditions de recherche, comme si les paramètres étaient connectés par un opérateur.

15
aphoria

Toute bonne coquille Unix pour Windows fera cela.

Par exemple, voici une capture d'écran de mon Hamilton C Shell faire votre exemple (désolé, pas de matchs) et quelques autres qui produisent des matchs. Le ... Wildcard utilisé dans le troisième exemple correspond à zéro ou plusieurs niveaux de répertoire, tout ce qu'il faut pour le reste du modèle.

Wildcarding using Hamilton C Shell on Windows 7 x64

Et voici comment vous pourriez le faire avec Cygwinbash. Quelques différences ici car Cygwin suit UNIX Conventions: Les chemins sont généralement typés avec des barres obliques avant et la barre oblique inverse est le caractère d'échappement. Depuis que Unix ne comprend pas les lettres d'entraînement, ils ont introduit un /cydrive/c Notation pour faire référence à la C: conduire. Comme sur UNIX, Wildcarding est sensible à la casse. Et pendant qu'il prend en charge le niveau de répertoire multiple habituel, vous souhaitez, il n'inclut pas le ... J'ai ajouté à ma coquille. (Au lieu de cela, vous utiliseriez probablement find.)

Wildcarding using Cygwin bash on Windows 7 x64

5
Nicole Hamilton

Dans cmd, accédez à C:\Users, et courir

dir /s /b | findstr AppData\Local | findstr txt

Explication: dir /s répertorie tous les fichiers de récursivité, /b Affiche le chemin complet et dans tous ces fichiers enfants, utilisez l'opérateur de pipeline pour rechercher à la fois la chaîne 'AppData\local' et 'TXT'.

1
wile the coyote