Команды shell windows 10
shell:AccountPictures
shell:Roaming Tiles
shell:Common Programs
shell:PublicAccountPictures
shell:GameTasks
shell:UserProfiles
shell:MyComputerFolder
shell:SearchHistoryFolder
shell:Local Pictures
shell:SyncSetupFolder
shell:DpapiKeys
shell:Retail Demo
shell:Favorites
shell:My Video
shell:SearchHomeFolder
shell:RecordedTVLibrary
shell:System
shell:Libraries
shell:ThisDeviceFolder
shell:AppsFolder
shell:MusicLibrary
shell:CommonVideo
shell:OneDriveDocuments
shell:SyncResultsFolder
shell:Cookies
shell:CameraRollLibrary
shell:Original Images
shell:Recorded Calls
shell:3D Objects
shell:CommonMusic
shell:OneDrivePictures
shell:My Pictures
shell:Cache
shell:Local Videos
shell:Downloads
shell:SavedPictures
shell:CommonDownloads
shell:AppData
shell:SyncCenterFolder
shell:PublicLibraries
shell:VideosLibrary
shell:My Music
shell:ConflictFolder
shell:SavedGames
shell:InternetFolder
shell:HomeGroupFolder
shell:Quick Launch
shell:SystemCertificates
shell:Contacts
shell:UserProgramFiles
shell:Device Metadata Store
shell:Profile
shell:Start Menu
shell:Common AppData
shell:ProgramFilesCommonX64
shell:PhotoAlbums
shell:ProgramFilesX64
shell:ConnectionsFolder
shell:Administrative Tools
shell:ThisPCDesktopFolder
shell:OneDriveCameraRoll
shell:PrintersFolder
shell:DocumentsLibrary
shell:ProgramFilesX86
shell:Searches
shell:Local Downloads
shell:SearchTemplatesFolder
shell:Common Startup
shell:ControlPanelFolder
shell:SendTo
shell:ResourceDir
shell:ProgramFiles
shell:CredentialManager
shell:PrintHood
shell:MAPIFolder
shell:HomeGroupCurrentUserFolder
shell:User Pinned
shell:CD Burning
shell:Local Music
shell:UsersLibrariesFolder
shell:AppUpdatesFolder
shell:Application Shortcuts
shell:Common Start Menu
shell:Common Start Menu Places
shell:LocalAppDataLow
shell:OneDrive
shell:Templates
shell:Programs
shell:PicturesLibrary
shell:Roamed Tile Images
shell:Camera Roll
shell:Recent
shell:Desktop
shell:Virtual Machines
shell:CommonPictures
shell:RecycleBinFolder
shell:Screenshots
shell:CryptoKeys
shell:Common Templates
shell:Startup
shell:ImplicitAppShortcuts
shell:UserProgramFilesCommon
shell:Links
shell:OEM Links
shell:OneDriveMusic
shell:Common Desktop
shell:NetHood
shell:Ringtones
shell:Games
shell:Common Administrative Tools
shell:NetworkPlacesFolder
shell:SystemX86
shell:History
shell:Development Files
shell:AddNewProgramsFolder
shell:Playlists
shell:ProgramFilesCommonX86
shell:PublicGameTasks
shell:ChangeRemoveProgramsFolder
shell:Public
shell:SavedPicturesLibrary
shell:CommonRingtones
shell:Common Documents
shell:Captures
shell:CSCFolder
shell:Local AppData
shell:StartMenuAllPrograms
shell:Windows
shell:UsersFilesFolder
shell:Local Documents
shell:ProgramFilesCommon
shell:Fonts
shell:Personal
Если вы хотите узнать, какие из команд Shell наиболее полезны в Windows 10, а также многие другие конкретные команды, прочитайте это руководство. Держим пари, что вы, вероятно, не знали, что некоторые из этих рекомендаций были доступны до сих пор.
Доступ к этим командам осуществляется путем ввода функции «Выполнить» в операционной системе Windows 10. Кроме того, с помощью этих команд оболочки вы сможете получить доступ к определенной системной папке или одному из апплетов панели управления, которые есть в вашей операционной системе Windows 10.
Список команд оболочки в Windows 10
Прежде всего, вам нужно нажать и удерживать кнопку «Windows» и кнопку «R», чтобы открыть окно «Выполнить».
В окне «Выполнить» вам нужно будет записать одну из следующих команд, а затем нажать кнопку «Ввод», чтобы получить доступ к определенной функции.
- СВЯЗАННЫЕ: Исправлено: ошибка «Windows Shell Common Dll перестала работать»
Команды оболочки Windows 10 .
- «Shell: AccountPictures»
Примечание. эта команда открывает доступ к папке с изображениями учетной записи, которая есть на вашем устройстве Windows 10. - «Shell: AddNewProgramsFolder»
Примечание. Добавляет новую папку программы. - «Shell: Инструменты администрирования»
Примечание. Доступ к папке с инструментами администрирования. - «Shell: AppData»
Примечание. Доступ к папке AppData в системе Windows 10. - «Shell: ярлыки приложений»
Примечание. Доступ к папке ярлыков приложений. - «Shell: AppsFolder»
Примечание. Доступ к папке приложений. - «Shell: AppUpdatesFolder»
Примечание. Доступ к папке обновлений приложений. - «Shell: Cache»
Примечание. Доступ к папке с кэшем. - «Shell: Camera Roll»
Примечание. Доступ к папке с камерой. - «Shell: CD Burning»
Примечание. Доступ к временной папке записи. - «Shell: ChangeRemoveProgramsFolder»
Примечание. Доступ к папке «Удалить/изменить программу». - «Shell: Общие инструменты администрирования»
Примечание. Доступ к папке «Инструменты администрирования». - «Shell: Common AppData»
Примечание. Доступ к общей папке AppData. - «Shell: Common Desktop»
Примечание. Доступ к общей папке рабочего стола. - «Shell: Common Documents»
Примечание. Доступ к папке с общедоступными документами. - «Shell: Common Programs»
Примечание. Доступ к папке «Программы». - «Shell: Common Start Menu»
Примечание. Доступ к папке меню «Пуск». - «Shell: Common Startup»
Примечание. Доступ к папке «Автозагрузка», расположенной в системе Windows 10. - «Shell: Common Templates»
Примечание. Доступ к папке «Общие шаблоны». - «Shell: CommonDownloads»
Примечание. Доступ к папке загрузок. - «Shell: CommonMusic»
Примечание. Доступ к папке с музыкой. - «Shell: CommonPictures»
Примечание. Доступ к папке «Изображения». - «Shell: CommonRingtones»
Примечание. Доступ к папке рингтонов. - «Shell: CommonVideo»
Примечание. Доступ к общедоступной папке «Видео». - «Shell: ConflictFolder»
Примечание. Доступ к папке «Conflict» в системе Windows 10. - «Shell: ConnectionsFolder»
Примечание. Открывает папку подключений. - «Shell: Контакты»
Примечание. Открывает папку контактов. - «Shell: ControlPanelFolder»
Примечание. Открывает папку панели управления. - «Shell: Cookies»
Примечание. Открывает папку «Cookies». - «Shell: CredentialManager»
Примечание. Открывает функцию диспетчера учетных данных. - «Shell: CryptoKeys»
Примечание. Открывает папку ключей Crypto. - «Shell: CSCFolder»
Примечание. Открывает папку CSC. - «Shell: Desktop»
Примечание. Открывает папку «Рабочий стол». - «Shell: Хранилище метаданных устройства»
Примечание. Открывает папку хранилища метаданных. - «Shell: DocumentsLibrary»
Примечание. Открывает папку «Библиотека документов». - «Shell: Downloads»
Примечание. Открывает папку «Загрузки». - «Shell: DpapiKeys»
Примечание. Открывает папку DpapiKeys. - «Shell: Favorites»
Примечание. Открывает папку «Избранное». - «Shell: Fonts»
Примечание. Открывает папку «Fonts». - «Shell: Games»
Примечание. Открывает папку «Игры». - «Shell: GameTasks»
Примечание. Открывает папку «Задачи игры». - «Shell: History»
Примечание. Открывает папку «История». - «Shell: HomeGroupCurrentUserFolder»
Примечание. Открывает папку HomeGroup для текущего пользователя. - «Shell: HomeGroupFolder»
Примечание. Открывает папку HomeGroup. - «Shell: ImplicitAppShortcuts»
Примечание. Открывает папку ярлыков Implicit Apps. - «Shell: InternetFolder»
Примечание. Открывает интернет-папку. - «Shell: Libraries»
Примечание. Открывает папку «Библиотеки». - «Shell: Links»
Примечание. Открывает папку «Ссылки». - «Shell: Local AppData»
Примечание. Открывает локальную папку AppData. - «Shell: LocalAppDataLow»
Примечание. Открывает локальную папку AppDataLow. - «Shell: LocalizedResourcesDir»
Примечание. Открывает папку LocalizedResources. - «Shell: MAPIFolder»
Примечание. Открывает папку MAPI. - «Shell: MusicLibrary»
Примечание. Открывает папку LusicLibrary. - «Shell: My Music»
Примечание. Открывает папку «Моя музыка». - «Shell: My Video»
Примечание. Открывает папку «My Video». - «Shell: MyComputerFolder»
Примечание. Открывает папку MyComputer. - «Shell: NetHood»
Примечание. Открывает папку NetHood. - «Shell: NetworkPlacesFolder»
Примечание. Открывает папку NetworkPlaces. - «Shell: OEM Links»
Примечание. Открывает папку OEM Links. - «Shell: OneDrive»
Примечание. Открывает папку OneDrive в Windows 10 - «Shell: Original Images»
Примечание. Открывает папку «Оригинальные изображения». - «Shell: Personal»
Примечание. Открывает личную папку. - «Shell: PhotoAlbums»
Примечание. Открывает папку PhotoAlbums. - «Shell: PicturesLibrary»
Примечание. открывает папку PicturesLibrary. - «Shell: Playlists»
Примечание. Открывает папку «Плейлисты». - «Shell: PrintersFolder»
Примечание. Открывает папку принтера. - «Shell: PrintHood»
Примечание. Открывает папку PrintHood. - «Shell: Profile»
Примечание. Открывает папку профиля. - «Shell: ProgramFiles»
Примечание. Открывает папку ProgramFiles. - «Shell: ProgramFilesCommon»
Примечание. Открывает папку ProgramFilesCommon. - «Shell: ProgramFilesCommonX64»
Примечание. Открывает папку ProgramFilesCommonX64. - «Shell: ProgramFilesCommonX86»
Примечание. Открывает папку ProgramFilesCommonX86. - «Shell: ProgramFilesX64»
Примечание. Открывает папку ProgramFilesX64. - «Shell: ProgramFilesX86»
Примечание. Открывает папку ProgramFilesX86. - «Shell: Programs»
Примечание. Открывает папку «Программы». - «Shell: Public»
Примечание. Открывает общую папку. - «Shell: PublicAccountPictures»
Примечание. Открывает папку PublicAccountPictures. - «Shell: PublicGameTasks»
Примечание. Открывает папку PublicGameTasks. - «Shell: PublicLibraries»
Примечание. Открывает папку PublicLibraries. - «Shell: Quick Launch»
Примечание. Открывает папку быстрого запуска. - «Shell: Recent»
Примечание. Открывает папку с недавними элементами. - «Shell: RecordedTVLibrary»
Примечание. Открывает файл рекордера в системе Windows 10. - «Shell: RecycleBinFolder»
Примечание. Открывает системную папку корзины. - «Shell: ResourceDir»
Примечание. Открывает папку ресурсов. - «Shell: Retail Demo»
Примечание. Открывает демонстрационную папку - «Shell: Рингтоны»
Примечание. Открывает папку «Рингтоны» в Windows 10. - «Shell: изображения перемещенных плиток»
Примечание. Открывает папку изображений перемещенных плиток. - «Shell: Roaming Tiles»
Примечание. Открывает папку «Roaming Tiles». - «Shell: SavedGames»
Примечание. Открывает папку SavedGames, которая имеется в системе Windows 10. - «Shell: Screenshots»
Примечание. Открывает папку «Снимки экрана». - «Shell: Searches»
Примечание. Открывает папку поиска. - «Shell: SearchHistoryFolder»
Примечание. Открывает папку «История поиска» в вашей системе. - «Shell: SearchHomeFolder»
Примечание. Открывает домашнюю папку поиска. - «Shell: SearchTemplatesFolder»
Примечание. Открывает папку шаблонов поиска. - «Shell: SendTo»
Примечание. Открывает папку «SendTo». - «Shell: SkyDriveCameraRoll»
Примечание. Открывает папку SkyDriveCameraRoll. - «Shell: SkyDriveMusic»
Примечание. Открывает папку SkyDriveMusic. - «Shell: SkyDrivePictures»
Примечание. Открывает папку SkyDrivePictures. - «Shell: Start Menu»
Примечание. Открывает папку меню «Пуск». - «Shell: StartMenuAllPrograms»
Примечание. Открывает папку AllPrograms, которая находится в меню «Пуск». - «Shell: Автозагрузка»
Примечание. Открывает папку Автозагрузка. - «Shell: SyncCenterFolder»
Примечание. Открывает папку SyncCenter. - «Shell: SyncResultsFolder»
Примечание. Открывает папку SyncResults. - «Shell: SyncSetupFolder»
Примечание. открывает папку SyncSetup. - «Shell: System»
Примечание. Открывает системную папку. - «Shell: SystemCertificates»
Примечание. Открывает папку SystemCertificates. - «Shell: SystemX86»
Примечание. Открывает папку SystemX86. - «Shell: Templates»
Примечание. Открывает папку «Шаблоны». - «Shell: ThisPCDesktopFolder»
Примечание. Открывает папку ThisPCDesktop. - «Shell: Пользователь прикреплен»
Примечание. Открывает папку пользователя. - «Shell: UserProfiles»
Примечание. Открывает папку профилей пользователей. - «Shell: UserProgramFiles»
Примечание. Открывает папку «Program Files». - «Shell: UserProgramFilesCommon»
Примечание. Открывает общую папку Program Files. - «Shell: UsersFilesFolder»
Примечание. Открывает папку «Файлы» определенного пользователя, с которым вы вошли в систему. - «Shell: UsersLibrariesFolder»
Примечание. Открывает папку «Библиотеки» для конкретного пользователя. - «Shell: VideosLibrary»
Примечание. Открывает папку библиотеки видео. - «Shell: Windows»
Примечание. Открывает папку «Windows».
Стоит ли упоминать, что вы можете использовать команды, перечисленные выше, в CMD и File Explorer, а также. Если вы предпочитаете CMD, просто введите start и добавьте команду Shell, которую хотите запустить. В проводнике вы можете использовать адресную строку для ввода команд, перечисленных выше.
Вот вам и быстрый способ доступа к окну «Выполнить», а также все доступные команды оболочки в операционной системе Windows 10. Если у вас есть какие-либо вопросы, связанные с этим руководством, сообщите нам об этом в комментариях ниже, и мы поможем вам как можно скорее.
Вы, наверное, знакомы с командами shell, которые позволяют открывать различные системные и пользовательские расположения. Например, команда shell:Libraries в Windows 7 открывает библиотеки. Я предлагаю вам посмотреть, откуда они берутся и как их применять для ускорения работы.
Чем удобны команды
Поскольку тема явно не новая, я предлагаю вам взглянуть на ее практическое применение в этой и следующей статьях. С помощью команд shell вы можете:
- быстро переходить к папкам, вводя их в поиск меню «Пуск», диалоговое окно «Выполнить» (WIN+R), адресную строку проводника
- создавать ярлыки к часто используемым расположениям
- использовать в реестре в качестве путей для команд
Запуск элементов ActiveX
Сначала я расскажу о реже упоминаемом источнике команд, а заодно и менее распространенном (но иногда очень нужном) способе их запуска.
содержит список апплетов ActiveX, которые можно определить по наличию подраздела ShellFolder, Видите словесную связь с командой shell? Название подраздела реестра (GUID) можно использовать в качестве кода запуска, поставив после команды shell три двоеточия. Например, команда:
открывает папку Недавние места. Она отличается от папки Недавние документы тем, что в ней не отображаются недавно открытые файлы, а только список мест (папок, поисков, элементов панели управления), которые вы недавно открывали в проводнике и диалоговых окнах. К этой папке мы вернемся в следующей статье, в рамках рассказа о тонкой настройке окон «Открыть» и «Сохранить как».
Проводник Windows (explorer) понимает команды shell в качестве параметров командной строки, что можно использовать для команд в реестре. Так, в контекстные меню папки, рабочего стола и компьютера можно добавлять команды для открытия элементов панели управления, системных и пользовательских папок.
Получение списка элементов ActiveX
Получить список элементов проще всего с утилитой CLSID Dump. Она как раз и фильтрует нужный раздел реестра, извлекая сведения обо всех элементах ShellFolder и отображая список апплетов ActiveX.
С помощью утилиты очень удобно находить нужные элементы, поскольку она отображает как английское, так и русское название, а также позволяет отсортировать их по алфавиту. Элемент можно сразу запустить и посмотреть, и если он полезен, тут же создать ярлык, не прилагая усилий. Вы также можете скопировать GUID в буфер обмена, что пригодится при использовании команд в реестре. Наконец, можно экспортировать список в HTML.
Переход в известные папки
Более известный способ запуск команд основан на использовании кодовых слов, т.е. текстовых идентификаторов папок, которые понятны системе. Например, избранное проводника можно создать открыть так.
Владея английским, кодовые слова легче запомнить, конечно, но зачастую проще посмотреть их в справочнике ниже. Команды удобно использовать для:
- быстрого перехода в скрытую или системную папку, если их отображение отключено в проводнике
- объяснений, как добраться до какой-либо папки, что экономит время при оказании помощи (удобство, например, заключается в том, что нужная пользовательская папка открывается вне зависимости от имени учетной записи)
- создания ярлыков к часто используемым папкам
Все кодовые слова для команд можно найти в разделе реестра
Заглянув в его подразделы, можно подметить два момента:
- значение параметра Name является кодовым словом для запуска
- некоторые подразделы содержат параметр ParsingName, и его значение также можно использовать для запуска
Во втором случае мы как раз имеем дело с элементами ActiveX, а GUID в значении параметра указывает на подраздел в HKLM\SOFTWARE\Classes\CLSID, o котором шла речь выше. Теперь вы видите, почему при запуске команд путем вызова GUID используется дополнительная пара двоеточий.
Список известных папок для команд shell
Ниже приводится список этих команд для Windows Vista и Windows 7:
- выделенные красным команды работают только в Windows 7
- * перед путем означает, что папка является скрытой, т.е. не видна в проводнике, если отключено отображение скрытых файлов и папок (что, впрочем, не мешает переходить в нее командой)
Вадим - владелец этого блога, и почти все записи здесь вышли из-под его пера. Подробности о блоге и авторе здесь. Поддержать автора вы можете тут.
Вас также может заинтересовать:
Подпишитесь на канал и читайте интересные записи чаще! Есть вопросы? Задайте их в чате.
комментариев 19
Надо в грид добавить ещё один столбец, с отображением Shell. command
И, наконец, привести утилиту в божеский вид. Делов на 5 минут
А смысл? Все GUIDы ActiveX и так уже перечислены в утилите.
Аналогично можно открыть, например, корзину, а вот команда для IE:
Ваша оценка: 0 Ваша оценка: 0 Ваша оценка: 0Ту программу что вы предлагаете CLSID Dump
Вы уже извините за прямоту не программа а поделка какаято
alex, если у вас есть конкретные предложения по улучшению программы, либо вы хотите сообщить о баге, свяжитесь с ее автором (сайт указан).
Если у вас есть конкретные предложения по извлечению CLSIDs другим путем, я весь внимание.
Ваша оценка: 0Vadim Sterkin, подскажите, пожалуйста, почему CSLID Dump запускается под Windows 8.1, x64 с ошибкой? Автору утилиты я отписался, но может вам известно решение.
Ваша оценка: 0 Ваша оценка: 0 Ваша оценка: 0 Ваша оценка: 0 Ваша оценка: 0Во-вторых, проверьте, прописаны ли команды в
В разделе поиском ищите, например, Links. Должно выглядеть так.
Ваша оценка: 0написал как-то сумбурно. Но меня ждет основная работа. Засим откланяюсь до вечера, когда смогу на практике опробовать Ваши советы
Ваша оценка: +3Во давно искал этот сайт))
Ваша оценка: 0 Ваша оценка: 0 Ваша оценка: 0 Ваша оценка: 0 Ваша оценка: 0Удаление ярлыков происходит и на Windows 7 и на Windows 10 при поступлении в них обновлений (которые запускаются автоматически).
Да, я думаю можно организовать в планировщике, чтобы каждый раз после загрузки компьютера копировать (или перезаписывать существующие) ярлыки. Но мне казалось, что можно один раз где-то прописать для их сохранения (для сохранения содержимого папки SendTo).
Windows PowerShell позволяет системным администраторам автоматизировать большинство рутинных задач. С ее помощью можно менять настройки, останавливать и запускать сервисы, а также производить обслуживание большинства установленных приложений. Воспринимать синее окошко как еще один интерпретатор команд было бы неправильно. Такой подход не отражает сути предложенных корпорацией Microsoft инноваций. На самом деле возможности Windows PowerShell гораздо шире: в небольшом цикле статей мы попробуем разобраться, чем решение Microsoft отличается от более привычных нам средств.
Основные возможности
Windows PowerShell позволяет:
- Менять настройки операционной системы;
- Управлять службами и процессами;
- Настраивать роли и компоненты сервера;
- Устанавливать программное обеспечение;
- Управлять установленным ПО через специальные интерфейсы;
- Встраивать исполняемые компоненты в сторонние программы;
- Создавать сценарии для автоматизации задач администрирования;
- Работать с файловой системой, реестром Windows, хранилищем сертификатов и т.д.
Оболочка и среда разработки
Существует Windows PowerShell в двух ипостасях: помимо эмулятора консоли с командной оболочкой есть интегрированная среда сценариев (Integrated Scripting Environment — ISE). Чтобы получить доступ к интерфейсу командной строки достаточно выбрать соответствующий ярлык в меню Windows или запустить powershell.exe из меню «Выполнить». На экране появится синее окошко, заметно отличающееся по возможностям от допотопного cmd.exe. Там есть автодополнение и другие фишки, привычные пользователям командных оболочек для Unix-систем.
Для работы с оболочкой нужно запомнить некоторые сочетания клавиш:
- Стрелки вверх и вниз прокручивают историю для повтора ранее набранных команд;
- Стрелка вправо в конце строки перенабирает предыдущую команду посимвольно;
- Ctrl+Home удаляет набранный текст от позиции курсора до начала строки;
- Ctrl+End удаляет текст от курсора до конца строки.
Windows PowerShell ISE является полноценной средой разработки с поддерживающим вкладки и подсветку синтаксиса редактором кода, конструктором команд, встроенным отладчиком и другими программистскими радостями. Если в редакторе среды разработки после имени команды написать знак дефис, вы получите в выпадающем списке все доступные параметры с указанием типа. Запустить PowerShell ISE можно либо через ярлык из системного меню, либо с помощью исполняемого файла powershell_ise.exe.
Командлеты
Помимо Get в командлетах для обозначения действий используются и другие глаголы (и не только глаголы, строго говоря). В списке ниже мы приведем несколько примеров:
Add — добавить;
Clear — очистить;
Enable — включить;
Disable — выключить;
New — создать;
Remove — удалить;
Set — задать;
Start — запустить;
Stop — остановить;
Export — экспортировать;
Import — импортировать.
Есть системные, пользовательские и опциональные командлеты: в результате выполнения все они возвращают объект или массив объектов. К регистру они не чувствительны, т.е. с точки зрения интерпретатора команд нет разницы между Get-Help и get-help. Для разделения используется символ ‘;’, но ставить его обязательно только если в одной строке выполняется несколько командлетов.
Командлеты Windows PowerShell группируются в модули (NetTCPIP, Hyper-V и т.д.), а для поиска по объекту и действию существует командлет Get-Command. Показать справку по нему можно так:
По умолчанию команда отображает краткую справку, но в командлеты при необходимости передаются параметры (аргументы). С их помощью можно, например, получить детальную (параметр -Detailed) или полную (параметр -Full) справку, а также вывести на экран примеры (параметр -Examples):
Справка в Windows PowerShell обновляется командлетом Update-Help. Если строка команд получается слишком длинной, аргументы командлета можно перенести на следующую, написав служебный символ ‘`’ и нажав Enter — просто закончить писать команду на одной строке и продолжить на другой не получится.
Ниже приведем несколько примеров распространенных командлетов:
Get-Process — показать запущенные в системе процессы;
Get-Service — показать службы и их статус;
Get-Content — вывести содержимое файла.
Для часто используемых командлетов и внешних утилит в Windows PowerShell есть короткие синонимы — алиасы (от англ. Alias). Например, dir — алиас Get-ChildItem. Есть в списке синонимов и аналоги команд из Unix-систем (ls, ps и т.д.), а командлет Get-Help вызывается командой help. Полный список синонимов можно посмотреть с помощью командлета Get-Alias:
Сценарии, функции, модули и язык PowerShell
Скрипты Windows PowerShell хранятся в виде обычных текстовых файлов с расширением .ps1. Запустить их двойным кликом нельзя: нужно правой кнопкой мыши вызвать контекстное меню и выбрать пункт «Запустить в PowerShell». Из консоли придется либо указать полный путь к скрипту, либо перейти в соответствующий каталог и написать имя файла. Запуск сценариев также ограничен системной политикой, а для проверки текущих настроек можно использовать командлет Get-ExecutionPolicy, который выдаст одно из следующих значений:
Restricted — запуск сценариев запрещен (по умолчанию);
AllSigned — разрешен только запуск подписанных доверенным разработчиком сценариев;
RemoteSigned — разрешен запуск подписанных и собственных сценариев;
Unrestricted — разрешен запуск любых сценариев.
У администратора есть два варианта действий. Наиболее безопасный предполагает подписание скриптов, но это довольно серьезное колдунство — мы будем разбираться с ним в следующих статьях. Сейчас пойдем по пути наименьшего сопротивления и поменяем политику:
PowerShell для этого придется запустить от имени администратора, хотя с помощью специального параметра можно изменить политику и для текущего пользователя.
Пишутся скрипты на объектно-ориентированном языке программирования, команды которого именуются по тому же принципу, что и рассмотренные ранее командлеты: «Действие-Объект» («Глагол-Существительное»). Основное его предназначение — автоматизация задач администрирования, но это полноценный интерпретируемый язык, в котором есть все необходимые конструкции: условный переход, циклы, переменные, массивы, объекты, обработка ошибок и т.д. Для написания сценариев годится любой текстовый редактор, но удобнее всего запустить Windows PowerShell ISE.
В скрипт можно передавать параметры, делать их обязательными, а также задавать значения по умолчанию. Кроме того Windows PowerShell позволяет создать функции и вызывать их точно так же, как и командлеты: для этого используется конструкция Function и фигурные скобки. Сценарий с функциями называется модулем и имеет расширение .psm1. Модули должны храниться в каталогах, определенных в переменных окружения PowerShell. Посмотреть их можно при помощи следующей команды:
Конвейеры
В последнем примере мы применили знакомую пользователям оболочек для Unix-систем конструкцию. В Windows PowerShell вертикальная черта также позволяет передать выход одной команды на вход другой, но в реализации конвейера есть и существенная разница: речь здесь идет уже не о наборе символов или каком-то тексте. Встроенные командлеты или пользовательские функции возвращают объекты или массивы объектов, а также могут получать их на входе. Как в Bourne shell и его многочисленных последователях, в PowerShell с помощью конвейера упрощается выполнение сложных задач.
Простейший пример конвейера выглядит так:
Сначала выполняется командлет Get-Service, а потом все полученные им службы передаются на сортировку по свойству Status командлету Sort-Object. В какой именно аргумент передается результат работы предыдущего участка конвейера, зависит от его типа — обычно это InputObject. Подробнее этот вопрос будет рассматриваться в посвященной языку программирования PowerShell статье.
При желании цепочку можно продолжить и передать результат работы Sort-Object еще одному командлету (выполняться они будут слева направо). Кстати, пользователям Windows доступна и привычная всем юниксоидам конструкция для постраничного вывода:
Запуск задач в фоновом режиме
Довольно часто бывает нужно запустить некую команду в фоне, чтобы не дожидаться результата ее выполнения в сессии оболочки. В Windows PowerShell есть несколько командлетов на такой случай:
Start-Job — запуск фоновой задачи;
Stop-Job — остановка фоновой задачи;
Get-Job — просмотр списка фоновых задач;
Receive-Job — просмотр результата выполнения фоновой задачи;
Remove-Job — удаление фоновой задачи;
Wait-Job — перевод фоновой задачи обратно в консоль.
Для запуска фоновой задачи мы используем командлет Start-Job и в фигурных скобках указываем команду или набор команд:
Фоновыми задачами в Windows PowerShell можно манипулировать, зная их имена. Для начала научимся их отображать:
Теперь покажем результат работы задания Job1:
Всё довольно просто.
Удаленное выполнение команд
Windows PowerShell позволяет выполнять команды и сценарии не только на локальном, но и на удаленном компьютере и даже на целой группе машин. Для этого существует несколько способов:
- У многих командлетов есть параметр -ComputerName , но таким способом не получится, например, создать конвейер;
- Командлет Enter-PSSession позволяет создать на удаленной машине интерактивный сеанс;
- С помощью командлета Invoke-Command можно выполнять команды или сценарии на одном или нескольких удаленных компьютерах.
Версии PowerShell
С момента первого релиза в 2006 году PowerShell серьезно изменился. Инструмент доступен для множества систем, работающих на разных аппаратных платформах (x86, x86-64, Itanium, ARM): Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008/2008 R2, Windows 7, Windows 8, Windows 8.1, Windows RT, Windows RT 8.1, Windows Server 2012/2012 R2, Windows 10, Windows Server 2016, GNU/Linux и OS X. Последний релиз 6.2 выпущен 10 января 2018 года. Написанные для более ранних версий скрипты с высокой вероятностью будут работать в более поздних, а вот с обратным переносом могут возникнуть проблемы, поскольку за годы развития в PowerShell появилось большое количество новых командлетов. Узнать версию установленной на компьютере командной оболочки можно с помощью свойства PSVersion встроенной переменной $PSVersionTable:
Также можно воспользоваться командлетом:
То же самое делается и с помощью командлета Get-Host. На самом деле вариантов множество, но для их применения нужно изучить язык программирования PowerShell, чем мы и займемся в следующей статье.
Итоги
Читайте также: