PowerShell — це потужний інструмент, який дозволяє автоматизувати та спрощувати багато завдань, пов’язаних із файловою системою. Завдяки простому синтаксису та широким можливостям, PowerShell ідеально підходить як для адміністраторів, так і для розробників. У цій статті ми розглянемо корисні поради та хитрощі, які допоможуть ефективніше працювати з файлами та папками.
Навігація у файловій системі
PowerShell дозволяє легко переміщатися між каталогами. Основні команди:
Set-Location
(абоcd
) — змінює поточний каталог:
Set-Location C:\Users\Username\Documents
Get-Location
(абоpwd
) — показує поточний каталог
Get-Location
Щоб повернутися на рівень вище, можна використовувати:
Set-Location ..
Отримання списку файлів і папок
Команда Get-ChildItem
дозволяє переглядати вміст каталогу:
Get-ChildItem C:\Users\Username\Documents
Get-ChildItem C:\Users\Username\Documents
Скорочення команди — ls
або dir
. Для відображення лише файлів чи папок можна використовувати фільтри:
# Тільки файли
Get-ChildItem -Path C:\Temp -File
# Тільки папки
Get-ChildItem -Path C:\Temp -Directory
Для рекурсивного перегляду вмісту (включно з підкаталогами) додайте параметр -Recurse
:
Get-ChildItem -Path C:\Temp -Recurse
Створення, копіювання та переміщення
Створення папок і файлів
New-Item
створює нові елементи:powershellCopy code
# Створення папки
New-Item -ItemType Directory -Path C:\Temp\NewFolder
# Створення текстового файлу
New-Item -ItemType File -Path C:\Temp\NewFile.txt
Копіювання та переміщення
Copy-Item
— для копіювання файлів/папок:powershellCopy code
Copy-Item -Path C:\Temp\File.txt -Destination C:\Backup\
Move-Item
— для переміщення:powershell
Перейменування та видаленняMove-Item -Path C:\Temp\File.txt -Destination C:\Documents\
Перейменування та видалення
Перейменування
Команда Rename-Item
допомагає змінювати імена файлів та папок:
Rename-Item -Path C:\Temp\OldName.txt -NewName NewName.txt
Видалення
Remove-Item
видаляє файли або папки:powershellCopy code
# Видалення файлу
Remove-Item -Path C:\Temp\File.txt
# Видалення папки разом із вмістом
Remove-Item -Path C:\Temp\Folder -Recurse
Будьте обережні з параметром -Recurse
, щоб випадково не видалити важливі дані.
Пошук файлів
Для пошуку файлів за шаблоном використовуйте параметр -Filter
або команду Where-Object
:
# Пошук файлів із розширенням .txt
Get-ChildItem -Path C:\Temp -Filter *.txt -Recurse
# Пошук за умовою
Get-ChildItem -Path C:\Temp -Recurse | Where-Object {$_.Length -gt 1MB}
Зміна атрибутів і властивостей
PowerShell дозволяє змінювати атрибути файлів (наприклад, “Тільки для читання”):
# Додавання атрибуту
Set-ItemProperty -Path C:\Temp\File.txt -Name IsReadOnly -Value $true
# Видалення атрибуту
Set-ItemProperty -Path C:\Temp\File.txt -Name IsReadOnly -Value $false
Робота з вмістом файлів
Читання вмісту файлу
Для читання текстових файлів використовуйте Get-Content
:
Get-Content -Path C:\Temp\File.txt
Запис до файлу
Set-Content
замінює вміст файлу:
Path C:\Temp\File.txt -Value "Новий вміст"
Add-Content
додає текст до файлу:powershellCopy code
Add-Content -Path C:\Temp\File.txt -Value "Додатковий рядок"
Автоматизація рутинних завдань
PowerShell можна використовувати для створення скриптів, які автоматизують повторювані операції. Наприклад, скрипт для створення резервних копій файлів:
$source = "C:\Documents"
$destination = "D:\Backup"
Get-ChildItem -Path $source -Recurse | Copy-Item -Destination $destination
Не забувайте про регулярне тестування та перевірку ваших команд, особливо якщо вони впливають на важливі дані.
Залишити відповідь