web-dev-qa-db-fra.com

Répertorie les fichiers avec le chemin et la taille de fichier uniquement dans la ligne de commande

Ligne de commande Windows (ou peut-être PowerShell).

Comment puis-je lister tous les fichiers, récursivement, avec le chemin complet et la taille du fichier, mais sans rien d'autre et exporter vers un fichier .txt. Il est préférable que le code fonctionne pour le répertoire en cours dans lequel je suis en ligne de commande (il n’est donc pas nécessaire de saisir manuellement le répertoire cible).

Aucun de ceux-ci ne fournit le chemin\nom_fichier et la taille du fichier uniquement:

dir /s > filelist.txt
dir /s/b > filelist.txt
dir /s/o:-d > filelist.txt

Sortie souhaitée (chemin complet\taille du fichier.ext.ext):

c:\aaa\file.ext 7755777    
c:\aaa\bbb\1.txt 897667
c:\aaa\bbb\2.ext 67788990
c:\aaa\bbb\nnn\a.xls 99879000
4
user3026965
Get-ChildItem -Recurse | select FullName,Length | Format-Table -HideTableHeaders | Out-File filelist.txt
3
Daniel Agans

PowerShell:

gci -rec -file|%{"$($_.Fullname) $($_.Length)"} >filelist.txt

versions antérieures de PowerShell:

gci -rec|?{!$_.PSIsContainer}|%{"$($_.Fullname) $($_.Length)"} >filelist.txt

Fichier de lot:

(@For /F "Delims=" %%A in ('dir /B/S/A-D') Do @Echo %%~fA %%~zA) >filelist.txt

Cmdline

(@For /F "Delims=" %A in ('dir /B/S/A-D') Do @Echo %~fA %~zA) >filelist.txt
2
LotPings

Ce qui suit supprime le problème d'emballage que vous avez:

Get-ChildItem -Recurse | select Length,LastWriteTime,FullName | Format-Table -Wrap -AutoSize | out-string -width 4096 | clip

Regardez cette Référence.

0
Al Raja