Как да работите с файлови системи и директории в PowerShell

Ние и нашите партньори използваме бисквитки за съхраняване и/или достъп до информация на устройство. Ние и нашите партньори използваме данни за персонализирани реклами и съдържание, измерване на реклами и съдържание, информация за аудиторията и разработване на продукти. Пример за обработвани данни може да бъде уникален идентификатор, съхранен в бисквитка. Някои от нашите партньори може да обработват вашите данни като част от техния законен бизнес интерес, без да искат съгласие. За да видите целите, за които смятат, че имат законен интерес, или да възразите срещу тази обработка на данни, използвайте връзката към списъка с доставчици по-долу. Предоставеното съгласие ще се използва само за обработка на данни, произхождащи от този уебсайт. Ако искате да промените настройките си или да оттеглите съгласието си по всяко време, връзката за това е в нашата политика за поверителност, достъпна от нашата начална страница.

Ключови точки

  • За да изброите елементи в текущата директория в PowerShell, използвайте „Get-ChildItem“ или използвайте тази команда, последвана от пълния път на директорията, за да изброите всички елементи, като използвате абсолютния път.
  • Използвайте „Set-Location -Path“, последвано от абсолютен път, за да промените директорията към посочената папка, или отидете нагоре по нивата на директорията, като използвате „cd ..“, „cd ..\..\“ или „cd \“.

Ефективно управление на директории и навигиране през файлова система е от решаващо значение, тъй като се генерират и организират огромни количества данни. PowerShell се появява като мощен инструмент, който прави взаимодействието с директории безпроблемно и позволява лесно манипулиране на файлове и папки.

Независимо дали сте опитен ИТ специалист или любопитен технологичен ентусиаст, това ръководство има за цел да опрости сложността на работата с директории и файловата система в PowerShell. В тази статия ви показваме с примери как да навигирате и да работите с файлове и папки с помощта на командния ред на PowerShell.

Тази страница обхваща

Как да отворите Windows PowerShell

Има няколко начина, чрез които можете да отворите приложението PowerShell във вашата система.

Можете да получите достъп до PowerShell в Windows 10 или Windows 11 като просто щракнете с десния бутон върху Икона на Windows в лентата на задачите или чрез натискане на клавишите „Win + X“ и избиране на „Windows PowerShell.” Ако искате да го стартирате като администратор, щракнете върху „Windows PowerShell (администратор).”

Отворете Windows PowerShell от менюто WinX
Отворете Windows PowerShell от менюто WinX

Като алтернатива можете също да отворите PowerShell от Командно поле Run.

  1. Натиснете клавиша Windows + R, за да отворите полето Run Command.

  2. Напишете в „PowerShell“ и натиснете Въведете.

    Отворете PowerShell чрез командното поле за изпълнение
    Отворете PowerShell чрез командното поле за изпълнение

Да се стартирайте PowerShell като администратор, Натиснете Ctrl + Shift + Enter след като напишете „PowerShell“ в полето Run Command.

Работа с директории и файлова система в PowerShell

Директориите или папките ви помагат да организирате вашите компютърни файлове. Те действат като контейнери, където можете да поставите вашите файлове и дори други папки.

Докато файловата система в Windows е като голяма карта, която ви показва къде се съхранява всичко на вашия компютър. Това е като план, който ви помага да навигирате във всичките си файлове и папки. Файловата система решава как са организирани нещата и се грижи всичко да е на правилното място.

Нека сега продължим да ви показваме как да изпълнявате конкретни задачи, свързани с файлове и папки, като използвате само PowerShell.

Променете директорията на конкретен път в PowerShell

В PowerShell можете да превключите към определена директория, като използвате „Комплект-Местоположение” команда.

Използвайте следната команда, за да превключите работната (текущата) директория, като използвате следното „-път“ параметър:

Set-Location -Path "[FullPath]"

Забележка: Ако пътят съдържа интервали, оградете го в двойни кавички.

Например, за да промените на „C:\Потребители“ директория, използвайте тази команда:

Set-Location -Path "C:\Users"
Промяна на друга папка на директория в PowerShell
Променете към друга директория/папка в PowerShell

Можете също така да превключвате между различни директории, просто като въведете буква на устройството последвано от двоеточие, както в този пример:

Променете към друго устройство в PowerShell
Променете към друго устройство в PowerShell

Както можете да видите, не е необходима команда, специфична за PowerShell.

Променете директорията с помощта на променливи на средата в PowerShell

В Windows има две основни директории за програми: \Program Files (x86) и \Program Files. За да превключите към тези директории в PowerShell, най-добре е да използвате техните променливи на средата. По този начин не е необходимо да предоставяте пълни пътища.

Променливите на средата са като преки пътища, които представляват конкретни пътища на вашия компютър. Като извикате тези променливи в PowerShell, можете лесно да навигирате до съответните директории, без да въвеждате пълните пътища.

Например, за да преминете към директорията „C:\Program Files (x86)“, можете да използвате променливата на средата „%ProgramFiles (x86)%“. По същия начин, за да превключите към директорията „C:\Program Files“, можете да използвате "%Програмните файлове%" променлива. Следват стъпките за това:

Забележка: Променливата на средата за папката „Program Files (x86)“ е {env: ProgramFiles (x86)} и за папката "Program Files" е {env: ProgramFiles}.

Използвайте следния синтаксис, за да промените директорията в папка с променлива на средата:

Set-Location $[EnvironmentalVariable]
Променете директорията в PowerShell с помощта на променлива на околната среда
Променете директорията в PowerShell с помощта на променливата на околната среда

Можете да използвате същата концепция с всички директории, които имат променлива на средата.

Преместване на файл, папка с PowerShell

Ако искате да преместите определен файл или папка чрез PowerShell, използвайте „Преместване на елемент” команда. С тази команда можете да преместите един файл или папка или дори да посочите типовете множество файлове за преместване. Разбира се, за тази цел трябва да използвате както пътя на източника, така и пътя на местоназначението.

Синтаксисът на командата за преместване на един файл или папка е:

Move-Item -Path "[SourcePath]" -Destination "[DestinationPath]"

Сменете [Изходен път] с пътя на файла/папката, която искате да преместите, и [DestinationPath] с пътя, където искате да го преместите. Ако това е файл, който премествате, посочете и него разширение на файл.

Преместете файл или папка с помощта на PowerShell
Преместете файл или папка с помощта на PowerShell

В примера по-горе преместихме „TestFile.txt“ от D устройство в основата на E устройство.

За да преместим определен тип файл, ще използваме „*“ (звездичка), последвано от разширението на файла. това ще премести всички файлове в конкретната директория към целевия път. Ето синтаксиса на командата:

Move-Item -Path "[SourcePath]\*.[FileExtension]" -Destination "[DestinationPath]"

Сменете [Изходен път] с пътя на папката, откъдето искате да преместите файловете, [Разширение на файл] с типа файл, който искате да преместите, и [DestinationPath] с пътя, където искате да ги преместите.

Преместване на множество файлове с един и същ файлов тип с помощта на PowerShell
Преместване на множество файлове с един и същ файлов тип с помощта на PowerShell

Копирайте файл, папка с PowerShell

По-горе обсъдихме как да преместите файл, множество файлове или папка с помощта на PowerShell. Нека сега ви покажем как да ги копирате на друго място. „Копиране на елемент” cmdlet се използва за тази цел.

Използвайте синтаксиса по-долу, за да копирате файл или папка на ново място с помощта на PowerShell:

Copy-Item -Path "[SourcePath]" -Destination "[DestinationPath]"

Сменете [Изходен път] с пътя на файла/папката, който искате да копирате, и [DestinationPath] с пътя, където искате да го копирате. Ако това е файл, който премествате, посочете и файловото му разширение.

Копирайте файл или папка с помощта на PowerShell
Копирайте файл или папка с помощта на PowerShell

В този пример копирахме „TestFile1.txt“ от DestinationFolder в устройството E към SourceFolder в устройството D.

Можете да използвате същия синтаксис и за копиране на цели папки. Разбира се, в този случай няма да е необходимо разширение на файл.

Можете също да преименувате файла, който се копира по време на процеса. Просто въведете новото име в [DestinationPath] променлива и файлът ще бъде копиран с посоченото име. Ето пример, в който преименувахме файла „TestFile1.txt“ на „NewTestFile.txt“.

Копирайте файл, докато го преименувате с помощта на PowerShell
Копирайте файл, докато го преименувате с помощта на PowerShell

Можете също така да копирате цялото съдържание на папка в друга директория, като използвате „*“ (звездичка), като използвате командния синтаксис:

Copy-Item -Path "[SourcePath]\*" -Destination "[DestinationPath]"
Копирайте всички елементи от изходната папка в целевата папка с помощта на PowerShell
Копирайте всички елементи от изходната папка в целевата папка с помощта на PowerShell

Придвижете се до директория с променливи в PowerShell

За да опростите процеса на навигация до определено място във вашата файлова система, можете да съхраните пълния път на директория в променлива. Използването на променливи позволява лесен достъп до често използвани директории, елиминирайки необходимостта да въвеждате пълния път многократно или да разчитате на хронологията на местоположението. Ето стъпките, които трябва да следвате:

  1. Съхранявайте път на директория към потребителска променлива, като използвате следната команда:

    $[VariableName]='[PathToStore]'

    Сменете [Име на променлива] с всяко потребителско име за променливата и [PathToStore] с пълния път на файла/папката, който искате да съхраните.

    Съхранявайте местоположение на файлова папка в променлива в PowerShell
    Съхранявайте местоположение на файл/папка в променлива в PowerShell
    Set-Location -Path $psh
  2. Сега използвайте тази променлива вместо пълни пътища.

    Можете да използвате тази променлива в копие-т команда, преместване на елемент команда, или набор-локация команда. Ето няколко примера:

    Set-Location -Path $[VariableName] Copy-Item -Path "D:\SourceFolder\TestFile1.txt" -Destination $[VariableName] Преместване на елемент -Път "D:\SourceFolder\*.txt" -Destination $[VariableName]

Придвижване нагоре по нива в йерархията на директориите в PowerShell

Когато управлявате файлове или работите по проекти в PowerShell, обичайно е да навигирате до родителската директория на текущата директория. The CD Командата (Промяна на директория) в PowerShell поддържа нотацията „..“, която ви позволява лесно да превключите към родителската директория, без да посочвате пълния път.

Тази функция опростява придвижването с едно ниво нагоре в йерархията на файловата система и улеснява ефективната навигация в директорията.

За да преминете едно ниво нагоре в йерархията на директорията, въведете следната команда:

cd ..

Интервалът след командата не е задължителен, но подобрява четливостта. Тази подкана ще се промени към родителската директория, без да посочва пълния път.

За да се придвижите нагоре с две нива в йерархията на директорията, изпълнете командата:

cd ..\..\

И накрая, за да отидете до основната директория на текущото устройство, въведете следната команда:

cd \
Преместване на нива на директория за актуализиране в PowerShell
Преместване на нива на директория за актуализиране в PowerShell

Списък на елементи в конкретна директория в PowerShell

За да изброите съдържанието на директория в PowerShell, „Get-ChildItem” се използва cmdlet. Можете или да предоставите абсолютния път на директорията, или просто да използвате Get-ChildItem когато вече сте в същата директория.

В този пример ще изброим съдържанието на директорията E:\Documents.

При стартиране на Get-ChildItem команда извън тази директория, трябва да се посочи абсолютният път на директорията. Това гарантира, че PowerShell знае точно от коя директория да извлече съдържанието. Командата ще бъде:

Get-ChildItem E:\Documents\
Избройте всички елементи в директорията в PowerShell, като използвате абсолютен път
Избройте всички елементи в директорията в PowerShell, като използвате абсолютния път

При изпълнение на Get-ChildItem команда директно в директория, няма нужда да посочвате пълния път. Това е известно като относителен път. В такива случаи можете просто да изпълните командата, без да предоставяте абсолютния път, и PowerShell ще покаже съдържанието на текущата директория. Командата ще бъде:

Get-ChildItem
Избройте всички елементи в текущата директория в PowerShell
Избройте всички елементи в текущата директория в PowerShell

Заключение

Използването на PowerShell за управление на директории и файлове предлага множество предимства за потребителите. Той е многофункционален и предоставя лесни за използване команди, които опростяват процеса на работа с директории и навигация във файловата система.

Независимо дали става въпрос за безпроблемна промяна на директории, достъп до файлове с интервали в техните имена или ефективно организиране и манипулиране на файлове, PowerShell се оказва ценен инструмент за всичко това.

Последна публикация в блога

Изтеглете и инсталирайте PowerShell 7.2 Preview 2 за Windows 10
September 17, 2023

Ние и нашите партньори използваме бисквитки за съхраняване и/или достъп до информация на устройство. Ние и нашите партньори използваме данни за пер...

Изтеглете PowerShell 7.2 Preview 4 (Ръководство за инсталиране)
September 16, 2023

Microsoft пусна PowerShell 7.2 Preview 4 в Github. Ако сте маниак и искате да използвате новата функционалност, можете да инсталирате тази актуализ...

Изтеглете и инсталирайте PowerShell 7.2 Preview 3
September 17, 2023

Microsoft пусна друга предварителна актуализация за PowerShell 7.2. Това е PowerShell 7.2 Преглед 3. Изглежда Microsoft работи активно върху PowerS...