Создать каталог powershell: Создание файлов и папок с Powershell New-Item с копированием и переименованием

Содержание

Создать папку в PowerShell

Организация данных и файлов — важная деятельность, которую необходимо учитывать в вычислительной технике. Чем более организованы ваши файлы, тем увереннее вы будете их находить. Например, если вы работаете над проектом и размещаете файлы на разных дисках компьютера, через несколько месяцев будет сложно найти файлы. С другой стороны, если вы храните файлы на одном диске и в одной папке, их будет легче найти, когда они понадобятся.

Есть несколько способов создать каталоги в Windows. Командная строка Windows (CMD) может создавать каталоги / папки путем ручного доступа к целевому расположению. Однако в этом руководстве мы используем PowerShell. Поэтому перед началом перечислим несколько принципиальных отличий CMD от PowerShell.

Различия между PowerShell (PS) и CMD

Для каждой задачи, которую вы можете выполнить в CMD, эти задачи также могут быть выполнены в PowerShell. Однако различия между PowerShell и CMD заключаются в следующем:

Как создавать папки в Windows с помощью PowerShell

Есть несколько способов создания каталогов в PowerShell, и мы подробно их обсудим.

Сначала откройте терминал PowerShell, чтобы продолжить. Для этого нажмите на «Поиск» на панели задач и введите «PowerShell» там. Нажмите на «PowerShell» чтобы открыть его:

Способ 1:

Первый способ прост, и если вы знаете командную строку Windows (CMD), вы будете знакомы с этой командой. В обеих оболочках команда работает одинаково. Приведенная ниже команда создаст «directory1» в текущем рабочем каталоге:

>mkdir directory1

Однако, если вы хотите создать каталог на любом другом диске или в другом месте, вы должны указать путь. Например, следующая команда создаст «Каталог1» в «E» водить машину:

>mkdir E: \ каталог1

Способ 2:

Другой способ создания каталогов с помощью PowerShell такой же, как и в CMD. Вы можете запустить приведенную ниже команду, чтобы создать каталоги:

> md directory2

Более того, если вы создаете каталог на других дисках, вы должны указать путь, по которому вы хотите получить новый каталог:

> md E: \ directory2

Способ 3:

Следующий метод создает каталог с помощью «Новый предмет» команда, как показано ниже: команда создаст «Каталог3» в вашем текущем рабочем каталоге:

> каталог нового элемента3 -тип вещи каталог

Более того, если вы хотите создать каталог в любом определенном месте, вам нужно будет указать путь перед именем каталога:

> новый элемент E: \ directory3 -тип вещи каталог

Метод 4:

Этот метод также создаст каталоги в желаемом месте с помощью объекта scripting-filesystemobject. Этот объект содержит файлы и каталоги для различных операционных систем, таких как UNIX и все ОС Windows. VBScript также использует то же самое для обработки файлов. Более того, этот метод сначала сгенерирует объект сценария. После этого «CreateFolder» позволит вам создать новый каталог.

Если вы хотите создать папку в текущем рабочем каталоге, скопируйте и вставьте следующую команду, чтобы создать «Каталог4» в текущем рабочем каталоге:

>$ fso = новый объект -ComObject scripting.filesystemobject
>$ fso.Создать папку(«Каталог4»)

Выходные данные этой команды содержат обширную информацию, относящуюся к новому каталогу, например «ShortPath», «Короткое имя,» и «Тип». Эти отдельные поля не присутствуют ни в каком другом выводе команды.

Более того, если вам требуется каталог в другом месте на вашем компьютере, выполните приведенную ниже команду, чтобы сделать это:

>$ fso = новый объект -ComObject scripting. filesystemobject
>$ fso.Создать папку(«E: \ directory4»)

Метод 5:

Вы можете использовать класс .NET Framework для создания каталога с помощью system.io.directorу. Во-первых, этот метод получит класс каталога .NET Framework. Этот класс каталога будет использоваться для создания нового каталога в вашей системе, чтобы создать новый каталог в вашем текущем рабочем каталоге. Используйте команду, указанную ниже:

>[system.io.directory]:: CreateDirectory(«Каталог5»)

Однако, чтобы создать каталог в другом месте на ПК, вы должны указать путь к указанному месту в двойных кавычках. Следующая команда создаст каталог на нашем диске «E»:

>[system.io.directory]:: CreateDirectory(«E: \ directory5»)

Вы заметите здесь другой результат. Выходные данные не покажут вам путь, по которому создается каталог. Однако, если вы написали правильную команду, руководство будет создано по пути, указанному в команде.

Заключение

Действительно важно, как вы организуете свой «данные» в вычислениях. Можно увидеть важность того, как вы управляете своими файлами данных и храните их для будущего использования. Для этого папки или каталоги помогают управлять вашими файлами или данными. В этом руководстве показаны различные методы создания папок с помощью PowerShell. Однако «Мкдир» а также «Мкр» команды — это самый простой способ создания каталогов. Более того, от пользователей зависит, какой метод они хотят реализовать.

как массово добавить к имени файлов имя их родительской папки – Вадим Стеркин

Вы тут: Главная → Windows → PowerShell: как массово добавить к имени файлов имя их родительской папки

Рубрики: Windows, Вопрос — Ответ Обновлено: 05.06.2022 комментариев 18

С этим вопросом обратился мой давний товарищ Денис. Ранее в блоге я показывал массовое переименование файлов методом поиск/замена и добавлением счетчика к файлам. Приклеивание имени родительской папки выглядит менее распространенной задачей. Тем не менее, я много раз видел в форуме скриптов вопросы про это (фильтр также выводит похожие темы). Заметьте, что там всегда хотят батники. А тут сразу PowerShell.

Когда-то я ковырялся в путях оператором -Split. Похожий метод .NET split() фигурировал в блоге с целью парсинга ссылок – для выборки уникальных ссылок на веб-странице и для загрузки с youtube-dl. Имя родительской папки можно получить так:

("C:\temp\f.txt" -Split "\\")[-2]

В кавычках указан разделитель \ (второй обратный слэш там нужен для экранирования). Получается массив из отрезков пути, где [-2] дает второй элемент с конца. Это как раз имя родительской папки.

Однако Василий Гусев давно повелел освоить командлет Split-Path. Он функциональный, конечно, но в рамках данной задачи интуитивностью не блещет. Судите сами:

Split-Path (Split-Path -Path "C:\temp\f.txt" -Parent) -Leaf

Второй командлет (в скобках) выдает путь к родительской папке с помощью параметра -Parent. А первый Split-Path с параметром -Leaf извлекает из пути последний отрезок, т.е. искомое имя папки.

Дальше все сводится к ванлайнеру, но так его будет чуть легче воспринимать:

Get-ChildItem -File | ForEach-Object {
    Rename-Item $_.FullName -NewName ("$(Split-Path (Split-Path $_.FullName -Parent) -Leaf)_$($_.Basename)$($_.Extension)") -WhatIf
    }

Новое имя собирается из кирпичиков:

  • $(Split-Path (Split-Path $_.FullName -Parent) -Leaf) — имя родительской папки
  • _ — просто разделитель между именем родительской папки и текущим именем файла
  • $($_.Basename) — текущее имя файла без расширения
  • $($_.Extension) — расширение

Заметьте, что обрабатываются файлы только в текущей папке. Добавьте к Get-ChildItem параметр -Recurse, если для вложенных папок необходимо добавлять их имена к файлам. Если же для файлов из вложенных папок нужно добавлять имя «главной» родительской, проще поместить его в переменную. И дальше подставлять ее вместо двойного Split-Path для каждого файла.

А о чем был ваш последний скрипт или хотя бы ванлайнер?

Метки: PowerShell Информация в статье применима к Windows 7 и новее

Вадим — владелец этого блога, и почти все записи здесь вышли из-под его пера. Подробности о блоге и авторе здесь. Поддержать автора вы можете тут.

← Как создать ярлык для отправки Windows в сон, когда получается только в гибернацию

Нюансы VHDX: как увеличить раздел с Windows, когда мешает раздел восстановления →

Подпишитесь на канал и читайте интересные записи чаще! Есть вопросы? Задайте их в чате.

Новый элемент (Microsoft.PowerShell.Management) — PowerShell | Microsoft Learn

  • Справочник
Модуль:
Microsoft.PowerShell.Управление

Создает новый элемент.

Синтаксис

 Новый элемент
   [-Путь] <Строка[]>
   [-ItemType ]
   [-Значение <Объект>]
   [-Сила]
   [-Учетные данные ]
   [-Что если]
   [-Подтверждать]
   [] 
 Новый элемент
   [[-Путь] <Строка[]>]
   -Имя <Строка>
   [-ItemType ]
   [-Значение <Объект>]
   [-Сила]
   [-Учетные данные ]
   [-Что если]
   [-Подтверждать]
   [<Общие параметры>] 

Описание

Командлет New-Item создает новый элемент и устанавливает его значение. Типы предметов, которые можно создать
зависит от местонахождения товара. Например, в файловой системе New-Item создает файлы и
папки. В реестре New-Item создает разделы и записи реестра.

New-Item также может устанавливать стоимость создаваемых им элементов. Например, при создании нового
файл, New-Item может добавить начальное содержимое в файл.

Примеры

Пример 1: Создание файла в текущем каталоге

Эта команда создает текстовый файл с именем «testfile1.txt» в текущем каталоге. Точка
(‘.’) в значении параметра Path указывает текущий каталог. Цитируемый текст, который
следует за параметром Value , который добавляется в файл как содержимое.

 Путь к новому элементу . -Name "testfile1.txt" -ItemType "file" -Value "Это текстовая строка". 

Пример 2: Создание каталога

Эта команда создает каталог с именем «Файлы журнала» на диске C: . Параметр ItemType
указывает, что новый элемент является каталогом, а не файлом или другим объектом файловой системы.

 New-Item -Path "c:\" -Name "logfiles" -ItemType "directory" 

Пример 3: Создание профиля

Эта команда создает профиль PowerShell по пути, указанному в $profile переменная.

Вы можете использовать профили для настройки PowerShell. $profile — это автоматическая (встроенная) переменная, которая
сохраняет путь и имя файла профиля «CurrentUser/CurrentHost». По умолчанию профиль делает
не существует, хотя PowerShell хранит для него путь и имя файла.

В этой команде переменная $profile представляет путь к файлу. Параметр ItemType
указывает, что команда создает файл. Параметр Force позволяет создать файл в
путь к профилю, даже если каталоги в пути не существуют.

После создания профиля вы можете ввести псевдонимы, функции и сценарии в профиль для
настройте свою оболочку.

Дополнительные сведения см. в разделе about_Automatic_Variables.
и about_Profiles.

 New-Item -Path $profile -ItemType "file" -Force 

Пример 4. Создание каталога в другом каталоге

В этом примере создается новый каталог Scripts в каталоге «C:\PS-Test».

Имя нового элемента каталога «Сценарии» включено в значение Параметр пути ,
вместо указанного в значении Name . Как видно из синтаксиса, любая форма команды
является действительным.

 New-Item -ItemType "directory" -Path "c:\ps-test\scripts" 

Пример 5. Создание нескольких файлов

В этом примере файлы создаются в двух разных каталогах. Поскольку Path принимает несколько строк,
вы можете использовать его для создания нескольких элементов.

 New-Item -ItemType "file" -Path "c:\ps-test\test.txt", "c:\ps-test\Logs\test.log" 

Пример 6. Использование подстановочных знаков для создания файлов в нескольких каталогах

Командлет New-Item поддерживает подстановочные знаки в параметре Path . Следующая команда создает
temp.txt во всех каталогах, указанных подстановочными знаками в параметре Путь .

 Get-ChildItem -Путь C:\Temp\
Каталог: C:\Temp
Режим LastWriteTime Длина Имя
---- ------------- ------ ----
д----- 15.05.20196:45 1 раз
д----- 15.05.2019 6:45 1 Два
д----- 15.05.2019 6:45 1 Три
New-Item -Path C:\Temp\* -Name temp.txt -ItemType File | Полное имя Select-Object
ФИО
--------
C:\Temp\One\temp.txt
C:\Temp\Three\temp.txt
C:\Temp\Two\temp.txt 

Командлет Get-ChildItem показывает три каталога в каталоге C:\Temp . Использование подстановочных знаков
командлет New-Item создает файл temp.txt во всех каталогах текущего
каталог. Командлет New-Item выводит созданные вами элементы, которые передаются в Select-Object
для проверки путей вновь созданных файлов.

Пример 7. Создание символической ссылки на файл или папку

В этом примере создается символическая ссылка на файл Notice. txt в текущей папке.

 $link = New-Item -ItemType SymbolicLink -Path .\link -Target .\Notice.txt
$ссылка | Select-Object LinkType, цель
Целевой тип ссылки
-------- ------
Символическая ссылка {.\Notice.txt} 

В этом примере Target является псевдонимом для параметра Value . Цель символической ссылки
может быть относительным путем. До PowerShell версии 6.2 целью должен быть полный путь.

Начиная с PowerShell 7.1, теперь вы можете создать SymbolicLink в папку в Windows, используя
относительный путь.

Пример 8. Используйте параметр -Force, чтобы попытаться воссоздать папки

В этом примере создается папка с файлом внутри. Затем пытается создать ту же папку, используя
-Форс . Он не перезапишет папку, а просто вернет существующий объект папки с
файл создан без изменений.

 PS> New-Item -Path .\TestFolder -ItemType Directory
PS> New-Item -Path .\TestFolder\TestFile.txt -ItemType File
PS> New-Item -Path . \TestFolder -ItemType Directory -Force
    Каталог: C:\
Режим LastWriteTime Длина Имя
---- ------------- ------ ----
д----- 01.05.2020 8:03 TestFolder
PS> Get-ChildItem .\TestFolder\
    Каталог: C:\TestFolder
Режим LastWriteTime Длина Имя
---- ------------- ------ ----
-a---- 01.05.2020 8:03 0 TestFile.txt 

Пример 9. Использование параметра -Force для перезаписи существующих файлов

В этом примере создается файл со значением, а затем файл создается заново с использованием -Force . Это перезаписывает
Существующий файл, и он потеряет свое содержимое, как вы можете видеть по свойству длины

 PS> New-Item ./TestFile.txt -ItemType File -Value «Это всего лишь тестовый файл»
    Каталог: C:\Source\Test
Режим LastWriteTime Длина Имя
---- ------------- ------ ----
-a---- 01.05.2020 8:32 24 TestFile.txt
New-Item ./TestFile.txt -ItemType File -Force
    Каталог: C:\Source\Test
Режим LastWriteTime Длина Имя
---- ------------- ------ ----
-a---- 01.05.2020 8:32 0 TestFile. txt 

Примечание

При использовании New-Item с переключателем -Force для создания разделов реестра команда будет работать
так же, как при перезаписи файла. Если раздел реестра уже существует, он и все
свойства и значения будут перезаписаны пустым разделом реестра.

Параметры

-Подтвердить

-Учетные данные

-Принудительно

-ItemType

-Имя

-Путь

8 -Значение

3

Входные данные

Объект

Вы можете передать значение нового элемента этому командлету.

Выходные данные

Объект

Этот командлет возвращает созданный им элемент.

Примечания

PowerShell включает следующие псевдонимы для New-Item :

  • Все платформы:
    • нет

New-Item предназначен для работы с данными, предоставленными любым поставщиком. Список поставщиков
доступны в вашем сеансе, введите Get-PsProvider . Дополнительные сведения см. в разделе about_Providers.

  • Прозрачный предмет
  • Копия предмета
  • Получить-Элемент
  • Invoke-Item
  • Переместить предмет
  • Удалить-Элемент
  • Переименовать элемент
  • Набор предметов
  • about_Providers

PowerShell Создать каталог | Как создать каталог в PowerShell?

Встроенный каталог команд предлагает множество команд для создания папки или каталога в PowerShell. Для создания каталога используется популярная команда New-item. Он также может быть создан с различными атрибутами. Хотя они не являются встроенными командами PowerShell, команды mkdir и md используются для создания каталогов. С помощью команды New-item в командлете также создается папка. Параметр itemtype используется для указания имени и расположения папки, в которой он должен быть создан.

Ключевые выводы

  • Каталог по умолчанию в PowerShell — C:\user\имя пользователя.
  • Новый элемент используется для создания файлов, папок, каталогов, реестров и т. д.
  • Каталог можно создать с помощью команды mkdir, md.
  • Каталоги работают с объектами файловой системы.
  • класс .net framework и System.io. объект каталога используется для создания каталогов.
  • Путь и соответствующие ссылки создаются вместе с каталогом.

Обзор PowerShell Create Directory

Управление файлами является важной частью; необходимо управлять и разделять все папки и предоставлять соответствующий доступ к соответствующему ресурсу. Он также должен выполнять другие стандартные операции с папками и файлами резервного копирования в системе Windows. Хотя это может показаться сложным, с помощью PowerShell можно легко управлять файлами и работать с ними. Это уменьшает количество ручной работы, связанной с управлением файлами.

Когда пользователь создает файл или каталог, убедитесь, что имя файла. Затем работайте над скриптом, который автоматически проверяет, существуют ли другие файлы с таким же именем, и переходит к созданию файла, если другого файла с таким именем нет.

Как создать каталог в PowerShell?

Новый каталог можно создать несколькими способами, некоторые из них приведены ниже; новый элемент используется для создания новых ссылок, новых папок, файлов или каталогов. –itemtype следует указать вместе с новой командой для создания каталога и имени пути.

Код:

 New-item – каталог itemtype новая папка 

Вывод:

Абсолютный путь используется в команде new-item, где новый каталог будет создан по новому пути. Использование двойных кавычек более важно для указания папок и пути. Новый элемент –item также используется для указания атрибута –path, где имя папки и путь должны быть указаны в структурированном формате.

Код:

 Новый элемент — тип элемента — каталог — путь ‘C: \data \folder1 

Новый элемент используется для создания ассоциативного пути и папок. В приведенной выше команде папка1 создается в родительском каталоге. В качестве альтернативы путь к каталогу и имя могут быть разделены значениями –name и –path.

Создание каталога с помощью команд md и mkdir

Команда md используется с командой new-item и работает со всеми атрибутами и синтаксисом. Команда md используется для создания каталога путем указания имени папки. Md и mkdir представляют каталог make.

Как создать Windows с помощью PowerShell?

Службы Windows обычно работают в фоновом режиме без вмешательства пользователя. Например, здесь веб-сервер отвечает на HTTP-запрос веб-страниц в сети и работает как служба и приложение для мониторинга, которое измеряет производительность журнала и данные об аппаратных событиях. Эти службы могут автоматически запускаться при загрузке системы. Если они запускаются по запросу, они запрашиваются приложением, которое от них зависит. Служба, выполняемая в сеансе Windows, отличается от сеанса пользовательского интерфейса. Они могут выполняться в нескольких системных процессах с особыми правами для ограничения угроз безопасности.

Windows PowerShell можно создать в PSSservice. Скрипт Ps1, выполнив следующие шаги.

В Windows функции службы управления PowerShell устанавливаются и удаляются самостоятельно. Затем он останавливается и запускается с помощью функций службы управления в PowerShell.

Содержит простой фрагмент кода C#, который создает файл PSService.exec в том месте, которое SCM ожидает с помощью команды Add-type. Снова отправьте файл pssservice.exe в сценарий psservice.ps1, используя операцию службы. Функции работы службы включают в себя onstop, onstart, response и другие события.

С помощью заглушки psservice.exe пользователь может управлять панелью управления SCM и доступными интерактивными инструментами. Будьте надежными и нажимайте команду в любом состоянии. Например, он может быть остановлен автоматически перед удалением или оставаться бездействующим при запуске для запуска уже запущенной службы. Функции Windows PowerShell версии 2 поддерживают Windows 7 и все последние версии Windows.

Новая команда создает каталог

Проще говоря, чтобы создать новый файл, введите новую команду в командлете. Он используется для создания всех типов объектов в PowerShell. Пользователь должен указать тип объекта, который необходимо создать в командлете.

Итак, чтобы создать папку или файл в PowerShell. Дайте команду нового элемента. Приведенная ниже команда создаст файл file1.txt. Тип элемента обозначает файл, создающий новый файл с пустым содержимым. Следовательно, он создает новый пустой текстовый файл для пользователя.

Код:

 Новое — Элемент — путь ‘ \\ shared \testfolder \file1.txt’ — файл типа элемента. 

Часто задаваемые вопросы

Ниже приведены часто задаваемые вопросы:

Q1. В Windows 11, как открыть новую папку в PowerShell?

Ответ:

Укажите PowerShell в меню запуска и выберите приложение Windows PowerShell в строке поиска. Перейдите в C, затем в Windows, затем в систему 32, затем в Windows PowerShell, выберите папку v1.