Énumérer les propriétés de fichier dans PowerShell
J'ai vu des morceaux de ce dans d'autres questions, mais je suis à la recherche d'un générique façon d'écrire une fonction qui prend un fichier, et la liste de ses propriétés de telle manière qu'ils peuvent être utilisés. Je suis conscient de la fonction appelée Get-ItemProperty
mais il ne liste pas les propriétés que je suis à la recherche d' (par exemple, étant donné un .fichier avi, il ne va pas me dire la longueur, la largeur d'image, etc).
Suis-je à l'aide de la fonction de mauvais (tout ce que je fais est: Get-ItemProperty file
) ou dois-je le faire d'une manière différente?
Je veux être en mesure de dire quelque chose comme $a += $fichier.Longueur, ou quelque chose comme ça pour des propriétés arbitraires.
OriginalL'auteur soandos | 2012-02-23
Vous devez vous connecter pour publier un commentaire.
Dirait que vous êtes à la recherche pour les attributs de fichier étendu. Ce ne sont pas stockées dans
System.IO.FileInfo
.Une façon est d'utiliser l'
Shell.Application
objet COM. Voici un exemple de code:http://web.archive.org/web/20160201231836/http://powershell.com/cs/blogs/tobias/archive/2011/01/07/organizing-videos-and-music.aspx
Dire que vous avez un fichier vidéo: C:\video.wmv
Vous aurez besoin de savoir ce que l'ID de l'attribut étendu. Cela va vous montrer toutes les ID:
Une fois que vous trouver celui que vous voulez, vous pouvez y accéder comme ceci:
..
est un opérateur. Il crée une boucle de contrôle. Donc0..287
dit boucle de0
à287
. Ainsi, dans le ForEach-Object bloc (%
est l'alias pour elle), la variable d'objet$_
sera de 0 puis 1 puis 2... jusqu'à ce qu'elle 287.J'ai vérifié tous ces attributs.. mais je ne peux pas trouvé de dernière modification du nom d'utilisateur.. Est-il un attribut ou d'une façon de le trouver? Je Vous remercie à l'avance.
il peut y plus de 288 dans certains cas. Vous pouvez exécuter 0..500 par exemple pour vérifier combien d'attributs sont là pour un type de fichier particulier. Par exemple, mp4 semble avoir des attributs jusqu'à 334.
OriginalL'auteur Andy Arismendi