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
- 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
- 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
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: