PowerShell – это альтернатива Microsoft собственной командной строке . Ранее Microsoft объявила, что они будут использовать PowerShell с открытым исходным кодом и представят его в последних версиях различных версий Linux, таких как Ubuntu, CentOS, Red Hat Enterprise Linux, OpenSUSE, Fedora и macOS. Они также выпустили PowerShell Core, который предлагал гораздо больше возможностей, чем предыдущая версия Powershell, поставляемая вместе с Windows. Он был создан для системных администраторов и должен был стать альтернативой командной строке. Благодаря кроссплатформенному расширению PowerShell пользователи получат преимущества для работы в разных операционных системах и средах.
В течение многих лет PowerShell разрабатывался и обновлялся для поддержки большего количества командлетов или команд PowerShell , чтобы он был достаточно гибким для управления различными задачами. Для организаций, которые используют программное обеспечение и службы только для Windows, Microsoft создает свои службы, такие как Windows Server, Azure Active Directory и Exchange, чтобы иметь возможность управления с помощью PowerShell. Это приводит к лучшему использованию сервисов, а не к использованию менеджеров конфигурации на основе графического интерфейса, и это помогает сэкономить много материально-технических затрат в долгосрочной перспективе.
Эквивалентные команды CMD, которые могут быть выполнены в PowerShell
Сегодня мы поговорим о некоторых базовых командах для CMD, которые также можно выполнять с помощью командной строки PowerShell.
1] Если вы хотите перейти в любое место в командной строке, это действительно просто. Где вы используете CD в командной строке, вы можете использовать
Set-Location ""
за то же самое внутри PowerShell.
2] Перечислять все содержимое папки не так уж важно, если она поможет вам перемещаться по дереву каталогов. Для командной строки мы использовали dir , но когда вы используете PowerShell, вы можете просто использовать
Get-ChildItem
перечислить все файлы и каталоги внутри каталога.
3] Переименование – это то, что мы считаем само собой разумеющимся в наших 100% GUI-ориентированных операционных системах. Но когда нужно переименовать файл или папку в удаленной системе, нужно полагаться на команду rename при использовании командной строки, но в PowerShell они могут использовать
Переименовать элемент "Path/of/the/file.txt" - NewName "NewNameOfTheFile.csv"
Используя это, пользователь может изменить имя, а также расширение конкретного файла.
4] Если вы знаете команду и не знаете, о чем она, /? Команда в командной строке командной строки была очень полезной. К счастью, PowerShell не испытывает недостатка в этой функции. Ты можешь использовать
Get-Help "CMDLET NAME"
чтобы проверить, что делает CMDLET на PowerShell.
5] Даже для остановки запущенного процесса вам не нужно полагаться на некоторые виды диспетчера задач, когда у вас есть PowerShell. taskkill – это надежная команда в командной строке, но с PowerShell вы можете использовать
Stop-Process -Name "ApplicationName.exe"
6] Я лично видел, что эту команду, которую мы собираемся обсудить, очень часто используют в школах. Это очень полезная команда. Его можно использовать для выключения удаленного компьютера или сеанса сервера. В командной строке можно использовать shutdown -s , но для PowerShell,
Stop-Computer -ComputerName "HostName1", "HostName2", "Шлюз или Адрес"
может использоваться для выключения удаленного компьютера.
7] Подобно выключению компьютера, команда командной строки shutdown -r,
Restart-Computer -ComputerName "HostNameNew", шлюз или адрес "
может использоваться с PowerShell для того же.
8] Если в групповую политику системы были внесены некоторые новые изменения, и для их просмотра необходимо принудительно обновить групповую политику, которая использовалась в командной строке gpupdate/force . Но на PowerShell можно использовать
Invoke-GPUpdate -Computer "Имя хоста" -Force
можно использовать без нареканий.
9] Чтобы установить переменные, в командной строке командной строки можно использовать
SET VariableName = "Значение переменной"
, но в PowerShell $ обо всем позаботится. Вы можете просто использовать эту команду, чтобы сделать необходимое,
$ VariableName = "Значение переменной".
10] Если вы хотите присоединить компьютер к домену, это тоже довольно просто.В командной строке можно использовать эту команду:
netdom/domain: имя_домена/пользователь: имя_пользователя/пароль: passwordForTheDomain имя хоста/add
но когда вы используете PowerShell, вы можете использовать
Add-Computer -DomainName "Domain" -Credential "Домен \ Имя пользователя" -Restart
Если мы внимательно наблюдаем, основные команды командной строки становятся немного сложнее, когда выполняются аналогично PowerShell. Но когда мы говорим о сложных командах, таких как команда присоединения к домену, которые мы использовали как в командной строке, так и в PowerShell, и когда мы наблюдаем, то команда, используемая в командной строке, гораздо сложнее, чем аналог PowerShell.
Следовательно, можно сказать, что реализация PowerShell поверх аналога командной строки лучше. Это также включает в себя тот факт, что он доступен и на других платформах и средах.
Мы считаем, что Microsoft будет более агрессивно работать над тем, чтобы сделать PowerShell лучше, чем командная строка, и не заставлять пользователей заменять ее командной строкой.