Основы windows powershell

Шаг 7: анализ полезных команд PowerShell

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

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

Get-AppXPackage | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register “$($_.InstallLocation)\AppXManifest.xml”}

Если запустить эту команду, игнорируйте обозначенные красным цветом предупреждения, и когда команда выполнена, перезагрузите компьютер; все предустановленные программы в Windows 10 появятся на своих местах.

Вот как работает данная команда. Get-AppXPackage проверяет все пакеты приложений в профиле пользователя. Даже если вы удалили приложение, оно остается в списке профиля пользователя.

Командлета Get-AppXPackage возвращает объект TypeName Microsoft.Windows.Appx.PackageManager.Commands.AppxPackage, который включает в себя полное имя пакета приложения и местонахождения соответствующего файла манифеста XML. Если запустить командлету get-appxpackage, вы увидите длинный список пакетов приложений. Скриншот показывает описание приложения Xbox.

Командлета Foreach посредством цикла проходит через каждый объект в AppXPackage, отправляя их командлету Add-AppxPackage. Согласно get-help для Add-AppxPackage, тут есть два ключевых переключателя:

  • Переключатель -Register используется для регистрации существующих установок пакетов приложений, можно задать параметры DisableDevelopmentMode и Register
  • Переключатель -DisableDevelopmentMode говорит Windows заново зарегистрировать существующий пакет приложения, который был отключён, не зарегистрирован или повреждён.

Строка «$($_.InstallLocation)\AppXManifest.xml» описывает, где расположен файл manifest.xml. Если посмотреть на файлы AppXManifest.xml, вы увидите сложный список идентификаторов приложений, исполняемых файлов и большое количество визуальных элементов, связанных с приложением.

После перезагрузки все добавленные пакеты приложений скачиваются и устанавливаются из магазина Windows Store.

  1. 5
  2. 4
  3. 3
  4. 2
  5. 1

(4 голоса, в среднем: 3 из 5)

Автоматическое завершение команд Windows PowerShell

Находясь в оболочке Windows PowerShell, можно ввести часть какой-либо команды, нажать клавишу <tab> и система попытается сама дописать полное имя этой команды. Автоматическое завершение команд срабатывает для имен файлов и путей файловых систем до первого найденного совпадения. При повторном нажатии клавиши <tab> выполняется циклический переход по имеющимся возможностям выбора.

В оболочке Windows PowerShell также реализована возможность автоматического завершения путей файловой системы на основании шаблонных символов: ? (любой один символ) и * (любое количество произвольных символов). Например:

После нажатия на клавишу путь будет преобразован в …

В оболочке Windows PowerShell имеется возможность автоматического завершения имен командлетов и их параметров. Если ввести первую часть имени (глагол) командлета и дефис, после этого нажать клавишу <tab>, то система выдаст имя первого подходящего командлета. Аналогичным образом срабатывает автозавершение и для параметров командлета, например введя имя командлета и дефис, после чего нажать <tab>, то автоматически будет подставлено имя первого подходящего параметра для этого командлета.

Windows PowerShell позволяет автоматически завершать имена переменных. И наконец Windows PowerShell поддерживает автоматическое завершение имён свойств и методов объектов. Например:

$a='test't'
$a.len
<tab>
$a.Length

Система подставила свойство Length, имеющееся у символьных переменных. Если подставляется имя метода (функции), а не свойства, то после его имени автоматически ставится круглая скобка. Например:

$a.sub
<tab>
$a.Substring(

Теперь можно вводить параметры метода (функции)…

Редактирование в командном окне Windows PowerShell

Windows PowerShell поддерживает те же возможности редактирования вводимых команд, что и в стандартной оболочке cmd.exe Вспомним ключевые:

Клав. комбинация        Действие
----------------        --------
<home>                  В начало текущей строки
<end>                   В конец текущей строки
<insert>                Переключение между реж. вставки и замены
<delete>                Удаление символа под курсором
<backspace>             Удаление символа перед курсором
<f7>                    Список команд вводимых ранее
<tab>                   Авто завершение команд

Работа с буфером обмена Windows: правой кнопкой мыши на заголовке окна PowerShell, меню «Изменить — Пометить», затем удерживая нажатой клавишу <shift> выделить нужный блок и нажать <enter>. Можно упростить манипуляции с буфером Windows включив режим выделения мышью и быстрой вставки.

* ПРИМЕЧАНИЕ: Если имеются несколько строк с командами, то достаточно скопировать их все и вставить в окно консоли, команды будут выполнятся поочерёдно — нет необходимости копировать и вставлять строки с командами по одной!

Добавить Windows PowerShell в контекстное меню

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

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

Поэтому, чтобы выполнить эту операцию, мы начнем с доступа к реестру Windows, используя сочетание клавиш «Windows + R», которое позволит нам запустить команду «Выполнить». Здесь мы должны написать «regedit» и нажать Enter, что приведет нас к интерфейсу редактора. После открытия мы должны перейти по следующему адресу.

Создайте новый ключ PowerShellDesktop

После того, как мы перешли по этому пути, мы должны щелкнуть правой кнопкой мыши папку «Shell». Затем появится всплывающее меню, в котором мы выберем «Новый» и «Ключ», чтобы создать новый ключ, который мы будем называть. PowerShellDesktop .

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

Создайте новый ключ с именем Command

Мы возвращаемся к левой панели и щелкаем правой кнопкой мыши по клавише «PowerShellDesktop», которую мы ранее создали. На этот раз мы выберем «Новый» и «Ключ», присвоив ему имя Команда. Теперь переходим на правую панель и дважды щелкаем по По умолчанию значение для редактирования его свойств. После открытия нового окна мы должны скопировать в поле данных значения следующую строку

Здесь мы должны иметь в виду, что, если наша Windows не установлена ​​на диске C, мы должны соответствующим образом изменить путь. Точно так же, если у нас нет версии PowerShell v1.0, мы должны изменить этот номер на версию, которая у нас есть. Если мы хотим узнать версию PowerShell, мы должны посмотреть на нее в пути. В общем, если мы не решили установить другую версию, это нормально, что у нас есть v1.0.

После того, как все данные будут введены, нажмите OK для подтверждения, и изменения должны вступить в силу немедленно. Чтобы проверить это, нам просто нужно щелкнуть правой кнопкой мыши любую папку и выбрать команду Windows PowerShell. Затем окно PowerShell должно немедленно открыться и поместить нас в выбранную папку.

Версии Windows PowerShell

Первая версия PowerShell 1.0 появилась 14 ноября 2006 года и выпускалась в виде отдельного дистрибутива, который можно было установить на следующие версии операционных систем Windows: Windows XP Service Pack 2, Windows Server 2003 Service Pack 1 и Windows Vista.

В Windows Server 2008 PowerShell 1.0 поставлялся в виде компонента, который также нужно было устанавливать.

Начиная с Windows 7 и Windows Server 2008 R2, PowerShell поставляется как неотъемлемый компонент системы (т.е. предустановленный, устанавливать его не надо). Ниже представлена таблица соответствия версии PowerShell и версии операционной системы Windows (т.е. какая версия PowerShell по умолчанию установлена в той или иной версии Windows):

Версия PowerShell Версии Windows
PowerShell 2.0 Windows 7, Windows Server 2008 R2
PowerShell 3.0 Windows 8, Windows Server 2012
PowerShell 4.0 Windows 8.1, Windows Server 2012 R2
PowerShell 5.0 Windows 10, Windows Server 2016

С каждой новой версией PowerShell становится все более мощным инструментом администрирования, для сравнения в первой PowerShell было около 130 командлетов, а в PowerShell 5.0 их уже более 600!

Узнать текущую версию PowerShell можно с помощью свойства PSVersion встроенной переменной $PSVersionTable, например, выполните следующую команду:

  
   $PSVersionTable.PSVersion

Или запустите командлет

  
   Get-Variable -Name PSVersionTable –ValueOnly

где, значение PSVersion и будет версией PowerShell.

Командлеты powershell

Sort-Object — сортирует объекты по возрастанию или по убыванию на основе значений свойств объектов. Можно задать одно свойство или несколько свойств (сортировка по нескольким ключам), а также выбрать сортировку с учетом или без учета регистра. Кроме того, можно сделать так, чтобы командлет Sort-Object выводил только объекты с уникальными значениями того или иного свойства.

Copy-Item — копирует элемент из одного местоположения в пространстве имен в другое. Командлет Copy-Item не удаляет копируемые элементы. Типы элементов, которые может копировать командлет, определяются наличием поставщиков Windows PowerShell. Например, при использовании командлета с поставщиком FileSystem копируются файлы и папки, а при работе с поставщиком реестра копируются разделы и записи реестра.

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

Remove-Item — удаляет один и более элементов. Данный командлет поддерживается многими поставщиками, поэтому он может удалять элементы различных типов, включая файлы, каталоги, разделы реестра, переменные, псевдонимы и функции.

Get-ChildItem — получает элементы из заданных местоположений. Если элемент является контейнером, данный командлет получает из контейнера элементы, которые называются дочерними элементами. Для извлечения элементов из всех дочерних контейнеров можно использовать параметр Recurse. Местоположение может являться расположением в файловой системе, например каталогом, либо расположением, предоставляемым другим поставщиком, например кустом реестра или хранилищем сертификатов.

Протоколирование действий в сеансе работы Windows PowerShell

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

Start-Transcript -Path <string> -Append -Force -NoClobber 
    -Confirm -WhatIf <CommonParameters>
 
# Запустим протоколирование
Start-Transcript -path .\psprotocol.txt
# выполним что-то
ps
# остановим протоколирование
Stop-Transcript
# просмотрим результат
type .\psprotocol.txt

Если имя файла протокола не указанно, то он будет сохранятся в файле, путь к которому задан в значении глобальной переменной Если переменная не определена, то командлет Start-Transcript сохраняет протоколы в каталоге «» в файлах «».

Если файл протокола, в который должен начать сохранятся сеанс работы, уже существует, то по умолчанию он будет переписан. Параметр командлета Start-Transcript -append включает режим добавления нового протокола к существующему. Если же указан параметр -noclobber, а файл уже существует, то командлет Start-Transcript не выполняет никаких действий.

Параметры командлетов powershell

-ErrorAction — параметр присутствует во всех командлетах, позволяет задать действие выполняемое при возникновении ошибки:

  • Continue — вывести сообщение об ошибке и продолжить выполнение
  • SilentlyContinue — проигнорировать ошибку и продолжить
  • Stop — при первой же ошибке прервать выполнение
  • Inquire — при возникновении ошибки вывести запрос что делать дальше

Пример: Copy-Item «d:\test1\klbackup*» «d:\test2\» -ErrorAction stop

-WhatIf — отображает сообщение, в котором описан результат команды, без фактического ее выполнения.  Присутствует во всех командлетах.

get-help about_CommonParameters — описание параметров, которые могут использоваться с любым командлетом.

Как просмотреть историю PowerShell

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

Чтобы просмотреть историю набранных вами команд, запустите следующий командлет:

Get-History

Вы можете выполнить поиск в своей истории, направив полученный результат в командлет Select-String и указав текст, который вы хотите найти. Замените «Пример» в приведенном ниже командлете текстом, который вы хотите найти:

Get-History | Select-String -Pattern «Пример»

Чтобы просмотреть более подробную историю команд, в которой отображается состояние выполнения каждой команды, а также время ее начала и окончания, выполните следующую команду:

Get-History | Формат-Список-Свойство *

По умолчанию командлет Get-History отображает только 32 последних записи журнала. Если вы хотите просмотреть или выполнить поиск в большем количестве записей в истории, используйте параметр -Count, чтобы указать, сколько записей в истории должен отображать PowerShell, например:

Get-History -Count 1000 Get-History -Count 1000 | Select-String -Pattern «Пример» Get-History -Count 1000 | Формат-Список-Свойство *

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

Для Windows PowerShell существует огромное количество разных командлетов и описать их все в одной статье не получится. Поэтому предлагаем ознакомиться с самыми востребованными из них:

  • Get-Help – получение справки;
  • Update-Help – обновление справки;
  • Get-Command – поиск командлетов;
  • Get-Alias – поиск псевдонимов для командлетов;
  • Get-PSDrive – просмотр подключенных дисков;
  • Get-Member – просмотр свойств и методов, которые есть у объекта;
  • Get-WindowsFeature – просмотр сведений о доступных ролях и компонентах сервера;
  • Install-WindowsFeature (аналог Add-WindowsFeature) — устанавливает роли или компоненты на нужный сервер;
  • Uninstall-WindowsFeature (аналог Remove-WindowsFeature) – удаляет роли или компонента сервера;
  • Get-History – просмотр истории команд, которые вводились в этой сессии;
  • Get-Variable – просмотр списка переменных и их значений;
  • New-Variable – создание новой переменной;
  • Set-Variable – установка значения переменной;
  • Clear-Variable – удаление значения переменной;
  • Remove-Variable – удаление переменной и ее значения;
  • Format-List – просмотр результата команды в виде списка свойств, где в каждой строке отдельное свойство;
  • Format-Table — просмотр результата команды в формате таблицы;
  • Format-Wide — просмотр результата команды в виде широкой таблицы, в которой показывается только одно свойство для каждого объекта;
  • Format-Custom – просмотр результата команды с использованием пользовательского представления;
  • Export-Csv – экспорт данных в формат CSV;
  • Import-Csv – импорт данных из CSV файла;
  • Export-Clixml — экспорт данных в формат XML;

Полный список командлетов для Windows PowerShell вы можете получить, выполнив командлет «Get-Command -CommandType cmdlet».

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

Утилита полностью автоматизирована, для управления рабочими процессами понадобится минимальное вмешательство человеческого фактора. Все что для нужно — задавать правильные команды. Но прежде чем это делать, нужно разобраться в главном вопросе: Что такое Windows PowerShell, для каких целей он служит и какие функции выполняет.

Работа с компьютером

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

  • Restart-Computer – командлет перезапускает операционную систему (перезагружает компьютер);
  • Stop-Computer – выключает компьютер;
  • Rename-Computer – переименовывает компьютер;
  • Checkpoint-Computer — создает точку восстановления системы на локальном компьютере;
  • Restore-Computer — запускает восстановление системы на локальном компьютере;
  • Disable-ComputerRestore — отключает функцию восстановления системы на указанном диске файловой системы;
  • Enable-ComputerRestore — включает функцию восстановления системы на указанном диске файловой системы;
  • Remove-Computer — удаляет локальный компьютер из домена;
  • Get-EventLog – выводит информацию о событиях в журнале событий, или список журналов событий на локальном или удаленном компьютере;
  • Clear-EventLog — удаляет записи из указанных журналов событий.

Самые полезные командлеты PowerShell

В оболочке собран их внушительный каталог, представленный сотнями команд. Запомнить все эти названия и приложенные к ним свойства, не представляется возможным. Но этого и не нужно делать, большинство их используется крайне редко, а то и вовсе не применимы на практике

Следует обратить внимание лишь на самые важные, практичные, несущие в себе полезные функции

Наиболее полезные в применении:

  • Get-Help – справочник по назначению командлетов и общим свойствам оболочки;
  • Update-Help — загрузка и установка обновленных справочных данных;
  • Get-Command – поисковик требуемых команд, с авто заполнением строки;
  • Get-Alias – отражает установленные псевдонимы, общим списком или с конкретикой;
  • Get-PSDrive – представляет запущенные диски и происходящие на них процессы;
  • Install-WindowsFeature – ролевой и компонентный установщик;
  • Uninstall-WindowsFeature – ролевой и компонентный деинсталлятор;
  • Get-History – отвечает за возвращение командных списков, выполненных при входе.
  • $hversion – возвращает версию утилиты

  Лучший бесплатный дефрагментатор для Windows

Переменные:

  • Get-Variable – показывает списком все переменные с учетом их значений;
  • New-Variable – используется для настройки ново созданных переменных;
  • Set-Variable – устанавливает новые значения, если они не значатся в списке;
  • Clear-Variable – деинсталлятор содержания, сохраняющий образ;
  • Remove-Variable — деинсталлятор командлетов и их составляющих.

Форматирование:

  • Format-List – расширенный справочник;
  • Format-Table – выводит таблицу результатов отдельных команд;
  • Format-Wide — расширенная таблица по результатам, со свойствами отдельных объектов.

Интернет:

  • Enable-NetAdapter – для включения адаптера;
  • Rename-NetAdapter – задает новое имя и представление;
  • Restart-NetAdapter – используется для перезапуска;
  • Get-NetIPAddress – предоставляет данные по конфигурации прокси-сервера;
  • Set-NetIPAddress – задает новую конфигурацию прокси-серверу;
  • New-NetIPAddress – занимается созданием и настройкой прокси-сервера;
  • Remove-NetIPAddress – деинсталлятор прокси-сервера;
  • New-NetRoute – используется для внесения дополнительных записей;
  • Get-NetIPv4Protocol — предоставляет данные по протоколу IPv4;
  • Get-NetIPInterface — отражает свойства и характеристики веб-интерфейса IP.

Элементы:

  • Get-Item — принимает элементы по заданному пути;
  • Move-Item – для перемещения элементов по другим папкам;
  • New-Item – используется для создания и оформления;
  • Remove-Item – деинсталлятор отмеченных элементов;
  • Get-Location – показывает местонахождение в настоящем времени.

Фоновые задания:

  • Start-Job – выполняет запуск;
  • Stop-Job – останавливает работу;
  • Get-Job – открывает список;
  • Receive-Job – предоставляет информацию о результатах;
  • Remove-Job – деинсталлятор фоновых задач.

Объекты:

  • Measure-Object – используется для расчета числовых агрегирующих параметров;
  • Select-Object – для выбора с указанием конкретных свойств;
  • Where-Object – отражает условия касательно выборки по значению и свойствам.

Службы и процессы:

  • Get-Process – показывает информацию об активных процессах ПК;
  • Start-Process – производит запуск на ПК;
  • Stop-Process — прекращает работу избранных;
  • Get-Service – предоставляет данные об активных службах;
  • Restart-Service – осуществляет перезапуск;
  • Start-Service – используется для подключения выбранных;
  • Stop-Service – ставит на паузу процесс;
  • Set-Service – изменяет свойства служб и режим подключения.

Компьютер и система:

  • Restart-Computer – используется для перезапуска ОС;
  • Checkpoint-Computer — для создания системной восстановительной копии для ПК;
  • Restore-Computer – отвечает за запуск восстановленной системы;
  • Remove-Computer — деинсталлирует локальный ПК из доменного имени;
  • Clear-EventLog – очищает список записей в журнале.

Контент:

  • Get-Content – принимает содержимое различных элементов;
  • Clear-Content — стирает содержимое, но сохраняет образы;
  • Set-Content – используется для перезаписи.

2 ответа

Лучший ответ

Те команды, которые встроены в (например, , ), являются не напрямую вызывается в сеансе PowerShell, но вы можете вызвать их через ; например.:

Однако вы обнаружите, что большинство таких команд имеют более мощные аналоги PowerShell. Чтобы упростить переход, некоторые команды PowerShell (называемые командлетами ) имеют псевдонимы , названные для их предшественников (например, имеет псевдоним ` X2`; используйте , чтобы узнать, к какой команде относится данное имя).

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

Вы можете запустить , чтобы определить, относится ли данное имя команды к встроенной команде или внешней утилите : если это последняя, печатается полный путь к ней . (Этот метод работает как с , так и с , но в PowerShell вы должны включить расширение , потому что просто означает что-то другое: это псевдоним { {X6}} командлет.)

Во всех этих случаях важно понимать, что синтаксис PowerShell работает совсем по-другому и что передаваемые аргументы будут интерпретироваться PowerShell first :

  • обеспечивает общий обзор .

  • Примечательно, что PowerShell имеет гораздо больше метасимволов, чем (больше символов имеют особое синтаксическое значение).

  • Особый интерес при вызове или вызове внешней утилиты представляет собой символ PSv3 + stop-parsing , , который обрабатывает оставшуюся часть команды так, как если бы она имела был вызван из ; например .:

8

mklement0
19 Апр 2018 в 11:43

Да вроде.

Иногда Powershell использует другой синтаксис для команд, поэтому, если у вас есть определенные команды, которые вы часто используете в CMD, вы можете сначала выполнить их быстрый поиск. Большинство команд одинаковы. Имейте в виду, что кучу команд powershell нельзя запустить без окна, имеющего права администратора, и окно PS не гарантирует, что оно имеет эти привилегии.

Новое обновление для Windows 10 избавило от обычных окон CMD в пользу PS. Это означает, что он светится электрическим синим цветом, но вы всегда можете изменить это, используя параметры по умолчанию или Свойства. Я считаю, что это изменение в Win10 также означало, что они устанавливают псевдонимы для CMD в PS для нас, но не указывайте меня на этом.

Kinna T
17 Май 2017 в 19:14

НОВЫЕ СТАТЬИ

Как удалить учетную запись электронной почты из почтового приложения в Windows 10
Проводите легкое управление онлайн-тестированием с помощью ZohoChallenge
Преимущества разработки веб-сайтов на PHP
Что такое электронный маркетинг и его преимущества
Как легко скрыть Unity Launcher в Ubuntu 14.04
Сканер вымогателей Eternal Blues для WannaCry и NotPetya
Программное обеспечение для покадровой съемки Panolapse для ПК с Windows
ScreenBlur: инновационный экран блокировки для блокировки рабочего стола Windows
Настройка окна командной строки Microsoft
Как исследовать и загружать изображения Google Планета Земля в качестве обоев на свой компьютер
Почему до сих пор используется спящий режим?
Как получать уведомления только для интересующих вас писем в Microsoft Outlook
Потрясающие уловки с адресом Gmail, чтобы получить больше от вашего электронного идентификатора
Создание диска для восстановления Surface Book и Surface Pro

Как просмотреть историю PowerShell

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

Чтобы просмотреть историю введенных вами команд, выполните следующий командлет:

 Get-History 

Вы можете выполнить поиск в своей истории, отправив полученный результат в командлет и указав текст, который вы хотите найти. Замените «Пример» в командлете ниже текстом, который вы хотите найти:

 Get-History | Select-String -Pattern "Пример" 

Чтобы просмотреть более подробную историю команд, в которой отображается состояние выполнения каждой команды, а также время ее начала и окончания, выполните следующую команду:

 Get-History | Format-List -Property * 

По умолчанию командлет отображает только 32 самых последних записи истории. Если вы хотите просмотреть или найти большее количество записей истории, используйте параметр , чтобы указать, сколько записей истории PowerShell должно отображать, например:

 Get-History -Count 1000
Get-History -Count 1000 | Select-String -Pattern "Пример"
Get-History -Count 1000 | Format-List -Property * 

Windows 7 — вспомнить все.

Раньше в Windows 7 использовал PSReadline (в Windows 10 уже по умолчанию он присутствует), очень удобная штука для запоминания команд и перехода к ним стрелками управления. PSReadline позволяет запоминать команды и воспроизводить их даже после перезапуска консоли PowerShell.

Устанавливается модуль командой:

PowerShell

install-module PSReadline

1 install-modulePSReadline

После установки, необходимо добавить команды для работы с модулем в профиль пользователя Powershell:

PowerShell

$HistoryFilePath = Join-Path (::GetFolderPath(‘UserProfile’)) .ps_history
Register-EngineEvent PowerShell.Exiting -Action { Get-History | Export-Clixml $HistoryFilePath } | out-null
if (Test-path $HistoryFilePath) { Import-Clixml $HistoryFilePath | Add-History }
Set-PSReadlineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadlineKeyHandler -Key DownArrow -Function HistorySearchForward

1
2
3
4
5

$HistoryFilePath=Join-Path(Environment::GetFolderPath(‘UserProfile’)).ps_history

Register-EngineEventPowerShell.Exiting-Action{Get-History|Export-Clixml$HistoryFilePath}|out-null

if(Test-path$HistoryFilePath){Import-Clixml$HistoryFilePath|Add-History}

Set-PSReadlineKeyHandler-KeyUpArrow-FunctionHistorySearchBackward

Set-PSReadlineKeyHandler-KeyDownArrow-FunctionHistorySearchForward

Перезапускаем консоль PowerShell и получаем возможность работы с ранее введенными командами.

Лабораторная работа №1

Интерпретатор командной строки ОС MSWindows.Внешние и внутренние командыЦель работы: Знакомство с возможностями интерпретатора командной строки и командами MS Windows.Ход работы:

  1. Ознакомиться с теоретическим материалом.
  2. Выполнить задания.
  3. Ответить на контрольные вопросы.

Задание:

  1. Запустить интерпретатор командной строки
  1. Увеличить размер окна интерпретатора и задать цвет фона и цвет шрифта (рекомендуется синий фон и белый шрифт).
  2. Создать список фамилий студентов группы. Отсортировать список в алфавитном порядке и сохранить его в новом файле.
  3. Создать текстовый файл, содержащий справочные сведения по командам DIR, COPY и XCOPY.
  4. Вывести содержимое указанного в таблице 1.1 каталога по указанному формату на экран и в файл.
  5. Скопировать все имеющиеся в каталоге Windows растровые графические файлы в каталог WinGrafika на диске С:. Если диск С: недоступен, использовать любой другой доступный диск.
  6. Скопировать все имеющиеся в каталоге Windows исполняемые файлы в каталог WinEx на диске С:. Если диск С: недоступен, использовать любой другой доступный диск.
Имя каталога Что выводить Сортировать по Атрибуты файлов и каталогов
%Windows% Файлы и подкаталоги По дате Скрытый

Описание выполнения работы

  1. Запустить интерпретатор командной строки.

  1. Увеличить размер окна интерпретатора и задать цвет фона и цвет шрифта (рекомендуется синий фон и белый шрифт).

  1. Создать список фамилий студентов группы. Отсортировать список в алфавитном порядке и сохранить его в новом файле.

Полученный список фамилий

  1. Создать текстовый файл, содержащий справочные сведения по командам DIR, COPY и XCOPY.

  1. Вывести содержимое указанного в таблице 1.1 каталога по указанному формату на экран и в файл.

  1. Скопировать все имеющиеся в каталоге Windows растровые графические файлы в каталог WinGrafika на диске С:. Если диск С: недоступен, использовать любой другой доступный диск.

  1. Скопировать все имеющиеся в каталоге Windows исполняемые файлы в каталог WinEx на диске С:. Если диск С: недоступен, использовать любой другой доступный диск.

являются системнымиОтветы на контрольные вопросы

  1. Достоинства и недостатки интерфейса командной строки.
  • Легкость автоматизации. По сути, это – простейшая программируемость. С графическим интерфейсом без поддержки программой командной строки это сделать почти невозможно.
  • Можно управлять программами, не имеющими графического интерфейса (например, выделенным сервером).
  • Любую команду можно вызвать небольшим количеством нажатий.
  • Можно обращаться к командам для разных исполнимых файлов почти мгновенно и непосредственно, тогда как в GUI приходится сначала запускать, а затем закрывать графический интерфейс для каждого исполнимого файла.
  • Просмотрев содержимое консоли, можно повторно увидеть промелькнувшее сообщение, которое не успели прочитать.
  • Можно пользоваться удаленным компьютером с любого устройства подключаемого к Интернету или локальной без особых затрат трафика.
  • Отсутствие деталей интерфейса, таких как пусковые панели и рамки окон, что при равных разрешениях позволяет вместить значительно больше текста на страницу.
  • Интерфейс командной строки не является «дружелюбным» для пользователей, которые начали знакомство с компьютером с графического режима.
  • Необходимость изучения синтаксиса команд и запоминания сокращений, осложняющаяся тем, что каждая команда может иметь свои собственные обозначения.
  • Без автодополнения, ввод длинных и содержащих спецсимволы параметров с клавиатуры может быть затруднительным.
  • Отсутствие «аналогового» ввода.
  1. Инструменты командной строки для автоматизации работы в ОС Microsoft Windows.
  1. Настраиваемые свойства интерпретатора.

утилиты командной строки

  1. Различие между внутренними и внешними командами. Примеры внешних и внутренних команд.
  1. Структура команды интерпретатора.
  1. Получение информации о конкретной команде.
  1. Групповые символы (шаблоны) и их использование.

только в том случаеидущая перед ними

  1. Перенаправление ввода/вывода и конвейеризация команд.
  1. Условное выполнение и группировка команд.
  1. Назначение символов &, &&, || и ().
  1. Команды для работы с файловой системой – названия и возможности.
  1. Достоинства и недостатки команд COPY и XCOPY.

файлы нулевой длины

  1. Назначение команды ECHO и примеры ее использования.
  1. Команда DIR и ее возможности.
  1. В какой кодировке интерпретатор выводит информацию и как получить читаемую твердую копию?

Командлеты PowerShell для удаленного управления

С помощью Windows PowerShell можно выполнять команды не только на локальном компьютере, но и на одном или даже на нескольких удаленных компьютерах.

  • Enter-PSSession — запускает интерактивный сеанс с удаленным компьютером;
  • Exit-PSSession — завершает интерактивный сеанс с удаленным компьютером;
  • New-PSSession — создает постоянное подключение к локальному или удаленному компьютеру;
  • Remove-PSSession — закрывает один или несколько сеансов Windows PowerShell;
  • Disconnect-PSSession — отсоединяется от сеанса;
  • Connect-PSSession — подключается к отключенным сеансам;
  • Get-PSSession — получает сеансы Windows PowerShell на локальных и удаленных компьютерах;
  • Invoke-Command — выполняет команды на локальном и удаленных компьютерах.
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Зов электронных книг
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: