5-Répertoires et fichiers

Get-ChildItem:

Permet de lister le contenu d’un répertoire.

Get-ChildItem D:\test
Get-ChildItem D:\test -Force
Get-ChildItem D:\test -Include *.txt -Recurse

Paramètres : -Force permet d’afficher les fichiers cachés et -Recurse le contenu de l’arborescence

Get-Location:

Retourne l’emplacement actuel en chemin absolu

Get-Location
$path = Get-Location
$path | Get-Member
$path = (Get-Location).path

La variable $path contiendra le chemin absolu du répertoire courant

Set-Location:

Permet de se déplacer dans une arborescence ou dans un autre disque

Set-Location C:
Set-Location D:\temp
Set-Location ..
Set-Location \

Pour rappel « .. » se réfère au répertoire parent et le « \\ » à la racine du disque courant

New-Item:

Permet la création de dossiers ou de fichiers. Le paramètre -ItemType définit File pour un fichier et Directory pour un répertoire

New-Item -ItemType Directory -Name titi -Path d:\toto
New-Item -ItemType File -Name tutu.txt -Path d:\toto
Remove-Item:

Permet de supprimer des fichiers ou dossiers

Remove-Item -Path d:\toto\tutu.txt
Get-ChildItem d:\toto\tutu.txt -Include *.txt | Remove-Item

Paramètres : - Force pour les fichiers cachés, -Whatif permet de simuler le résultat et -Confirm demander confirmation

Move-Item:

Permet le déplacement d’un fichier ou répertoire d’une source à une destination

Move-Item -Path d:\temp\toto -Destination d:\temp\titi
Move-Item -Path d:\temp\toto -Destination d:\machin -Force
Move-Item -Path d:\temp\*.ini -Destination d:\temp\ini

Pour le dernier exemple le répertoire ini doit déjà exister et pour le 2e, c’est le disque d: qui doit exister. Le -Force permet la création du répertoire si besoin

Rename-Item:

Permet de renommer un dossier ou un fichier

Rename-Item -Path C:\temp\toto titi
Rename-Item -Path C:\temp\toto C:\temp\titi
Rename-Item -Path C:\temp\doc1.txt doc2.txt
Copy-Item:

Permet de copier des fichiers ou des répertoires

Copy-Item -Path d:\temp\doc1.txt -Destination d:\docs
Copy-Item -Path d:\temp -Destination d:\backups -Recurse

Paramètre -Recurse pour une arborescence

Invoke-Item:

Permet d’ouvrir un fichier avec l’exécution associée par défaut

Invoke-Item -Path d:\temp\planning.docx

Le fichier planning.docx sera ouvert avec Office Word

Pour la base de registre:

Pour rappel, la base de registres (registry en anglais) contient des informations essentielles au fonctionnement du système, il est donc impératif d’être prudent!

L’interface graphique se lance avec regedit.exe pour Registry Editor

  • HKEY_CLASSES_ROOT, informations sur les applications, comme l’association entre une extension et l’exécutable associé

  • HKEY_CURRENT_USER, informations pour l’utilisateur actuel

  • HKEY_LOCAL_MACHINE, informations sur matériel, sécurité, système

  • HKEY_USERS, informations pour chaque utilisateur

  • HKEY_CURRENT_CONFIG, informations du boot actuel

Pour avoir la racine de l’arborescence de la registry, on utilise HKLM et HKCU

Dans l’exemple ci-dessous la registry a été modifiée avec l’ajout d’une clé ETML

../_images/Capt-registry-cle1.PNG
Get-ItemProperty:

Permet d’obtenir des informations sur un fichier, un répertoire ou une clé de registre

Get-ItemProperty -Path HKLM:\Software\ETML\CLE1

Dans le cas d’un fichier, il n’y a pas de différence entre les 2 commandes, mais dans le cas d’une clé, les informations retournées par ItemProperty sont plus complètes

../_images/Capt-item-property-7-zip.PNG
Get-ItemPropertyValue:

Permet d’obtenir des informations sur une valeur de clé

Get-ItemPropertyValue -Path HKLM:\Software\ETML\CLE1 -Name TOTO

Les commandes de la partie registry, avec les ItemProperty seront utiles pour gérer les informations de la partie droite.

Pour gérer l’arborescence, on utilise les mêmes commandes que pour les arborescences des disques

Il y a aussi sur le même principe les commandes ci-dessous

../_images/Capt-commandes-property.PNG

Pour des raisons de sécurité, avant de commencer les exercices, il faut ajouter la clé ETML, tel que dans la capture de l’exemple de l’éditeur de registres

Exercices: