Anda di halaman 1dari 33

La gestion de fichiers

8.1 Envoi de donnes dans un fichier 8.2 Les fichiers texte avec Out-File 8.3 Redirection du flux Standard 8.4 Cration des fichiers binaire avec Set-Content 8.5 Lecture des donnes avec Get-Content 8.6 Recherche de contenu avec select-String 8.7 Gestion des fichiers CSV

La gestion de fichiers
Windows powershell traite gnralement les fichiers texte unicode de faon native. Conrtairement CMD.exe qui manipule les fichiers ASCII. Pour des raisons de compatibilit ,il est possible de forcer les commandelettes utiliser dautres encodages comme ,ASCII,UTF8,UTF32 etc..

La gestion de fichiers
8.1 Envoi de donnes dans un fichier
Il ya deux faons de procder pour crire des donnes dans un fichier: Set-Content Out-File

La gestion de fichiers
8.1 Envoi de donnes dans un fichier
ces deux commandes servent crer des fichiers et des donnes. La diffrence qui existe :

La gestion de fichiers
8.1 Envoi de donnes dans un fichier
lorsque Out-File est utilis, il va tenter ,tout comme les autres commandes out-*,de formater le flux avant dcrire dans le fichier. Set-Content ne cherche pas formater le flux mais elle lui applique seulement la mthode ToString afin dtre sre dcrire des caractres.

La gestion de fichiers
8.1 Envoi de donnes dans un fichier
Exemple 1: le rsultat de cette commande crira dans un fichier le type de lobjet au lieu de son contenu .
PS>Get-Process powershell | Set-Content fichier.txt PS>Get-Content fichier.txt System.Diagnostics.Process (powershell)

La gestion de fichiers
8.1 Envoi de donnes dans un fichier
Exemple 2: la commande suivante nous donne le rsultat attendu .
PS>Get-Process powershell | Out-File fichier.txt PS>Get-Content fichier.txt

La gestion de fichiers
8.1 Envoi de donnes dans un fichier
Transtypage: Pour obtenir le mme rsultat avec Set-Content,il aurait fallu effectuer un transtypage sur lobjet avant de lcrire :
PS>Get-Process powershell | OutString Stream | SetContent fichier.txt

La gestion de fichiers
8.1 Envoi de donnes dans un fichier
Out-String nous permet de convertir les objets mis en les reprsentant sous forme de chane. Le paramtre Stream permet denvoyer au pipe autant de chanes que dobjets reus, au lieu denvoyer une chane unique contenant la reprsentation de tous les objets.

La gestion de fichiers
8.1 Envoi de donnes dans un fichier
Set-Content permet dcrire directement des octets dans un fichier grce au paramtre - encoding Byte .
Rsum: On aura plutt tendance privilgier lutilisation de OutFile pour crer des fichiers textes, et Set-Content pour des fichiers Binaires .

La gestion de fichiers
8.1 Envoi de donnes dans un fichier
8.1.1 Fichiers textes avec Out-File Cette commandelette va nous permettre de crer des fichiers et leurs contenus associs .Out-File a un certain nombre des paramtres supplmentaires.

La gestion de fichiers
8.1 Envoi de donnes dans un fichier

8.1.1 Fichiers textes avec Out-File


Les valeurs possibles:
Paramtres
FilePath<String> Encoding<String> Append<Switch> Width<int> InputObject<PSOBject> NoClobber<Switch>

Description
Fichier de destination Type dencodage (par defaut :Unicode) Ajoute du contenu un fichier existant Nombre de caractre maxi par ligne . Objet crire dans le fichier Indique de ne pas remplacer le fichier existant .

Paramtres
Ascii UTF7

La gestion de fichiers Force lencodage en ASCII de Base(jeu de caractres 0


127,7 bits).
Force lencodage en unicode UTF7 (Unicode Transformation Format).

Description

8.1 Envoi de donnes dans un fichier

8.1.1 Fichiers textes avec Out-File


UTF8 Unicode
BigEndianUnicode UTF32 Default

Force lencodage en unicode UTF .

Les valeurs possibles pour les paramtres dencodage:


Force lencodage en unicode UTF 16 LittleEndian .
Force lencodage en unicode UTF 16 BigEndian . Force lencodage en unicode UTF32 LittleEndian . Utilise lencodage de la plage de code ANSI actuelle du systme.

OEM

Utilise lidentificateur de la plage de codes du fabricant de lordianteur OEM(Original Equipement Manufacturer)actuel du systme.

La gestion de fichiers
8.1 Envoi de donnes dans un fichier

8.1.1 Fichiers textes avec Out-File Microsoft Windows travaille en interne en unicode avec UTF16 LittleEndian .

LittleEndian signifie que dans un mot (2 octet),loctet le moins significatif est positionn en premier. Exemple: si lon souhaite cod 10(base dcimal) en Hexadcimal sur 16bits cela donnerait: 00 0A en littleEndian et 0A 00 en BigEndian

La gestion de fichiers
8.1 Envoi de donnes dans un fichier

8.1.1 Fichiers textes avec Out-File Exemple 3: cration dun fichier contenant les informations sur un processus.
PS>Get-Process powershell |out-file d:\fichier1.txt encoding ascii

Cette commande va crer le fichier ascii fichier.txt .

La gestion de fichiers
8.1 Envoi de donnes dans un fichier

8.1.1 Fichiers textes avec Out-File Exemple 4: Ajout des donnes dans un fichier existant.
PS>Get-date |out-file d:\fichier1.txt -Append Encoding ascii

Cette commande va ajouter des donnes dans le fichier fichier.txt que nous avons crer prcdemment . Rmarque: spcifiez toujours le mme format dencodage.

La gestion de fichiers
8.1 Envoi de donnes dans un fichier

8.1.1 Redirection des flux standard loperateur > reprsente la forme la plus simple pour crer un fichier. Exemple 5: PS>Get-ChildItem c:\ > dir.txt

La gestion de fichiers
8.1 Envoi de donnes dans un fichier

8.1.1 Redirection des flux standard les oprateurs de redirection de flux > et >> font appel en ralit la commandelette > Out-File .pour en savoir voyons la sortie de Tracecommand .

La gestion de fichiers
8.1 Envoi de donnes dans un fichier

8.1.1 Redirection des flux standard


Exemple7:Trace-command Name CommandDiscovery expression {getdate>dir.txt} -PSHost

Cmdlet found:Out-File

La gestion de fichiers
8.2 Cration des fichiers binaires avec Set-Content
Contrairement Out-File,Set-Content crit les donnes telle quelle les reoit .elle crit directement les donnes dans un fichier quel que soit le type (texte ou binaire) . Set-content crase le contenu de fichier de destination car elle ne possede pas de switch append comme Out-File. Set-Content fait partie de la famille des cmdlets *-Content : Add-Content: ajoute des donnes un fichier existant . Clear-content:efface les donnes prsentes dans un fichier mais pas le fichier. Get-Content: lit le contenu dun fichier .

Paramtres Path<String[]>

Description Fichier de destination les donnes. La gestion dereevant fichiers Donnes crire (remplaerons le contenu existant).

Value<Object[]>

8.2 Cration des fichiers binaires avec Set-Content


Modifie uniquement les donnes spcifis.

Paramtres de Set-Content:

Include<String[]>

Exclude<String[]>

Omet les donnes spcifis.

Filter<String>

Spcifie un filtre dans le format ou le langage du fournisseur.

PassThru<Switch>

Passe lobjet cr par cette cmlet travers le pipeline .

Force<switch>

Force la commande russir sans compromettre la scurit,exemple:en crant le rpertoire de destination sil nexiste pas.

La gestion de fichiers
Paramtres ASCII

8.2 Cration des fichiers binaires avec Set-Content


Force lEncodage en ASCII de Base(je de caractere de 0 127 ,7bits). Force lEncodage en Unicode UTF7. Force lEncodage en Unicode UTF8. Force lEncodage en Unicode16 LittleEndian.

Description

Paramtres de Set-Content:
UTF7 UTF8 Unicode

BigEndian Unicode Byte String


Unknown

Force lEncodage en Unicode16 BigEndian. Force lEncodage en octet. Utilise le codage de la plage de code ANSI actuelle du systme.
Idem Unicode.

La gestion de fichiers
8.2 Cration des fichiers binaires avec Set-Content

Exemple 8: Ajout des donnes textuelles dans un fichier. PS> AABB | set-content test.txt La ligne de commande cre le fichier test.txt au format ANSI.

La gestion de fichiers
8.2 Lecture des donnes avec Get-Content

Get-Content va nous permettre de lire le contenu dun fichier. Ce dernier peut tre soit du type texte,soit du type binaire,peu importe. Par dfaut cette commandelette sattend lire des fichiers textes.

La gestion de fichiers
8.2 Lecture des donnes avec Get-Content

Paramtres de Get-Content

La gestion de fichiers
8.2 Lecture des donnes avec Get-Content

La gestion de fichiers
8.2 Lecture des donnes avec Get-Content

Exemple 9: fonctionalits de base PS>Get-Date > MesProcess.txt PS>Get-Process >> MesProcess.txt Ps>Get-Content MesProcess.txt TotalCount 10

La gestion de fichiers
8.2 Lecture des donnes avec Get-Content

Manipuler un fichier comme un Tableau. Exemple 10: PS>$fich= Get-Content math.txt PS>$fich[4]

La gestion de fichiers
8.2 Lecture des donnes avec Get-Content

Manipuler un fichier comme un Tableau. En utilisant une variable pour recevoir le rsultat de get-content,nous crons en ralit un tableau de ligne.

La gestion de fichiers
8.2 Lecture des donnes avec Get-Content

Lecture dun fichier en mode Brut Exemple 10: PS>powershel > brut.txt PS> Get-Content brut.txt -Encoding byte

La gestion de fichiers
8.3 Recherche de contenu avec Select-String
Select-String permet de passer en revue le contenu dune variable, dun fichier, ou dun grand nombre de fichier la recherche dune chaine de caractre sous forme dexpression rgulire. Voici les Paramtres de la chaine Select-String

La gestion de fichiers
8.3 Recherche de contenu avec Select-String

La gestion de fichiers
8.3 Recherche de contenu avec Select-String

Exemple 11: PS>Select-String d:\*.txt pattern powershell

Anda mungkin juga menyukai