- Как установить PowerShell в Linux
- Скачиваем необходимые пакеты
- Как установить PowerShell в Linux
- Запуск PowerShell в Linux
- Работа с Powershell Linux
- Что такое PowerShell?
- Установка PowerShell в Linux
- Работа с PowerShell в Linux
- Работа с файлами в PowerShell
- Работа с процессами в PowerShell
- Информация про PowerShell
- Выводы
- ИТ База знаний
- Полезно
- Навигация
- Серверные решения
- Телефония
- Корпоративные сети
- PowerShell против Bash: в чем разница?
- Немного истории: PowerShell
- Немного истории: Bash
- Когда использовать PowerShell
- Когда использовать Bash
- Отличия
- PowerShell по-разному обрабатывает данные
- Bash — это CLI
- PowerShell — это и CLI, и язык
- PowerShell и Bash — мощные инструменты
Как установить PowerShell в Linux
В последние полтора года, Microsoft делала много вещей, которые от нее мало кто ожидал. Это и год бесплатного обновления до Windows 10, и возможности запуска bash в своей ОС. Также компания изменила лицензии некоторых своих разработок на свободные. И еще одним приятным моментом стал выпуск PowerShell под Linux и Mac. И да, теперь он тоже open-source! На данный момент доступны пакеты для 64-битных версий Ubuntu 16.04, Ubuntu 14.04, CentOS 7, RHEL 7 и Mac OS X 10.11. Давайте рассмотрим как установить PowerShell в Ubuntu.
Скачиваем необходимые пакеты
Переходим на страницу релизов PowerShell на GitHub и скачиваем deb пакет для своей версии Ubuntu. Например, на данный момент у меня Ubuntu 16.04, для нее есть файл powershell_6.0.0-alpha.9-1ubuntu1.16.04.1_amd64.deb:
Как установить PowerShell в Linux
После загрузки deb пакета, можно приступать к установке. Открываем терминал и первое, что делаем — устанавливаем нужные зависимости:
А затем устанавливаем и сам PowerShell:
Например, если у вас Ubuntu 16.04, а пакет находится в папке «Загрузки», то команда установки будет выглядеть так:
Запуск PowerShell в Linux
Открываем терминал и вводим команду powershell дабы запустить оболочку:
Можете пользоваться PwerShell под Linux!
Чтобы выйти из окружения введите exit и нажмите Enter, либо же просто закройте терминал. Вот так вот все просто! А вы ждали PowerShell для Linux?
Источник
Работа с Powershell Linux
После того как компания Microsoft заинтересовалась Linux и открыла исходный код нескольких своих проектов, был открыт код командного интерпретатора и оболочки для выполнения системных скриптов Windows — PowerShell. Раньше PowerShell была доступна только для Windows, но теперь ее можно использовать даже в Linux и MacOS.
В этой статье мы рассмотрим что такое PowerShell, чем она может быть нам полезна, а также как выполняется работа с PowerShell Linux.
Что такое PowerShell?
PowerShell — это больше чем командная оболочка, это система автоматизации задач и управления конфигурацией, разработанная в Microsoft. Она состоит из интерпретатора команд (оболочки) и языка сценариев, основанного на платформе NET Framework. PowerShell реализует полный доступ к COM (Component Object Model) и WMI (Windows Management Instrumentation), поэтому позволяет системным администраторам выполнять различные административные действия на локальной или удаленных машинах. Также поддерживаются технологии WS-Management и CIM (Common Information Model), что позволяет управлять сетевыми устройствами.
Для решения каждой возникшей задачи необходимо создавать .NET классы, которые называются cmdlet или по-нашему коммандлеты. Для создания скриптов, так же как и в Linux можно сохранять группы коммандлетов в файл. Затем эти скрипты можно применить в качестве утилит командной строки или дополнительных инструментов.
Установка PowerShell в Linux
В официальных репозиториях оболочки PowerShell, к сожалению, нет, но в Microsoft создали свой PPA репозиторий, который мы можем использовать. Для добавления репозитория в Ubuntu используйте такие команды:
curl https://packages.microsoft.com/keys/microsoft.asc |sudo apt-key add —
$ curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list |sudo tee /etc/apt/sources.list.d/microsoft.list
$ sudo apt-get update
Эти команды рассчитаны на Ubuntu 16.04, для добавления репозитория в Ubuntu 16.10 используйте такие команды:
curl https://packages.microsoft.com/keys/microsoft.asc |sudo apt-key add —
$ curl https://packages.microsoft.com/config/ubuntu/16.10/prod.list |sudo tee /etc/apt/sources.list.d/microsoft.list
$ sudo apt-get update
Затем используйте пакетный менеджер apt для установки powershell и необходимых компонентов:
sudo apt install -y powershell
Для Red Hat, Fedora и CentOS Microsft тоже подготовили отдельный репозиторий. Чтобы его добавить выполните:
sudo curl https://packages.microsoft.com/config/rhel/7/prod.repo> /etc/yum.repos.d/microsoft.repo
Затем используйте yum для установки:
sudo yum install -y powershell
Работа с PowerShell в Linux
После того как установка PowerShell Linux будет завершена, вы можете перейти к работе с этой оболочкой. Дальше мы рассмотрим как начать работать, разберем основные команды для работы с файлами, каталогами и процессами. Также рассмотрим как получить список всех доступных команд и справку по них.
Чтобы запустить сеанс PowerShell выполните такую команду:
Теперь, вы можете узнать версию PowerShell и ее компонентов с помощью такой команды:
Продолжим рассмотрение команд, с команд для получения информации. Следующие две команды позволяют узнать текущую дату и время бесперебойной работы компьютера:
А эта команда позволяет узнать текущую рабочую папку:
Работа с файлами в PowerShell
Чтобы создать новый пустой файл используйте команду:
Затем добавим в этот файл содержимое:
> set-content losst.txt -value «Linux Open Source Software Technologies»
И смотрим новое содержимое файла:
Чтобы удалить файл используйте команду remove-item:
> remove-item losst.txt
> get-content losst.txt
Создайте новый каталог и перейдите в него:
> mkdir losst-files
> cd losst-files
Затем создадим один файл в этой папке и посмотрим ее содержимое:
> new-item losst.txt
> ls
Если вы хотите получить полный список файлов в папке с подробной информацией используйте команду dir:
Работа с процессами в PowerShell
Чтобы посмотреть список запущенных процессов используйте команду get-process:
Также вы можете получить информацию только по определенному процессу или группе, для этого передайте его имя в параметрах команде:
Вот значения основных колонок, которые выводит команда:
- NPM (K) — количество оперативной памяти, которую процесс использует в килобайтах;
- PM(K) — количество выгружаемой оперативной памяти, используемой процессом в килобайтах;
- WS (K) — размер блока с исполняемыми инструкциями процесса в килобайтах;
- CPU(s) — занимаемый процент процессорного времени;
- ID — идентификатор процесса (PID);
- ProcessName — имя процесса.
Как видите, здесь можно увидеть всю основную информацию о процессах. Чтобы остановить процесс используйте команду stop-process, в параметрах ей нужно передать PID:
> get-process ping
> stop-process 29895
Информация про PowerShell
Вы можете узнать всю необходимую информацию про команды PowerShell Linux, чтобы работа с оболочкой была максимально удобной. Для просмотра информации про доступные команды:
Чтобы посмотреть более подробную информацию по нужной команде используйте функцию get-help. Например, узнаем информацию про команду Describe:
Чтобы посмотреть все доступные псевдонимы команд используйте:
И еще одна вещь, которая может вам понадобиться, это история команд. Для ее просмотра наберите:
Выводы
Вот и все. В этой статье мы показали как выполняется работа с PowerShell Linux, а также как установить эту оболочку во всех основных дистрибутивах. PowerShell очень сильно отличается от привычных оболочек Linux, которые имеют лучшие, продуктивные и более интересные команды для выполнения различных задач из командной строки или написания скриптов. Но, возможно, администраторам Windows будет интересно использовать именно эту оболочку.
Источник
ИТ База знаний
Курс по Asterisk
Полезно
— Узнать IP — адрес компьютера в интернете
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Калькулятор инсталляции IP — АТС Asterisk
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
PowerShell против Bash: в чем разница?
PowerShell vs Bash
Windows и Linux являются очень производительными операционными системами, и у каждой из них есть множество плюсов и минусов, которые мы можем обсудить. Но как часто вы задумываетесь о потенциале сценариев и автоматизации двух операционных систем? Мы решили посмотреть, что можно делать с помощью скриптовых функций, поставляемых с Windows и Linux.
Мини — курс по виртуализации
Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена
Немного истории: PowerShell
PowerShell — это среда автоматизации и задач Microsoft, удобная для управления конфигурацией. PowerShell использует компоненты, называемые командлетами, которые встроены в PowerShell. Дополнительные функции доступны через модули. Они устанавливаются из галереи PowerShell непосредственно из командной строки.
PowerShell отличается от Bash, потому что он предназначен для взаимодействия со структурами .NET изначально в Windows. Это означает, что он может передавать объекты и данные между сценариями, приложениями и сеансами. Каждый объект имеет свой собственный набор свойств, что делает обработку данных в PowerShell еще более детальной. Данные могут быть указаны как числа (целые числа), слова (строки), логические (истина и ложь) и многие другие типы. Это означает, что вы можете по-настоящему определиться с тем, как ваши скрипты обрабатывают ввод и вывод данных.
Немного истории: Bash
Системы Linux и Unix всегда выигрывали от структурирования многопользовательской терминальной среды. Это означает, что вы можете запускать дополнительные сессии в той же системе и запускать сценарии и приложения, не влияя на основные сессии, в которые вошли другие пользователи. Это сильно отличалось от ранних систем Windows и DOS, которые были однопользовательскими средами с одной сессией, до появления Windows NT в середине 90-х годов.
Первоначальная оболочка, поставляемая с Unix, была известна как оболочка Bourne, названная в честь ее создателя Стивена Борна. Bash (Bourne again Shell) является преемником оболочки Bourne с открытым исходным кодом. Bash получил широкое распространение, когда Linux был создан в начале 90-х годов, поэтому он используется до сих пор.
Существует множество функций, которые делают Bash очень популярным, главными из которых являются стабильность системы и то, что это открытый исходный код. Из-за этого он встречается практически в каждом дистрибутиве Linux. Все эти факторы делают его одной из наиболее часто используемых сред сценариев для ИТ-специалистов.
Когда использовать PowerShell
Администрирование Windows стало намного проще с тех пор, как разработка PowerShell стала частью среды Microsoft. Вместо того, чтобы бороться с неудобными пакетными файлами и планировщиком Windows, системные администраторы получают доступ к новому набору инструментов с впечатляющими приложениями и функциями.
PowerShell может уточнять детали для создания эффективных скриптов, а также некоторых коммерчески доступных приложений. PowerShell может извлекать данные прямо из подсистемы WMI, предоставляя вам в режиме реального времени глубокую информацию обо всем, от идентификаторов процессов и счетчиков обработчиков.
PowerShell включен в платформу .NET, поэтому вы можете создавать великолепно выглядящие меню и формы winform. Вы можете использовать PowerShell, чтобы делать что угодно — от запросов к базам данных SQL до захвата ваших любимых RSS-каналов прямо в сеанс PowerShell для дальнейших манипуляций. Это настоящий швейцарский нож для системного администрирования в среде Windows.
Когда использовать Bash
Если вы используете системы Linux, значит, вы знаете о необходимости автоматизации задач. Ранние ленточные накопители использовались для резервного копирования с архивированием tar. Эти операции могут быть написаны в Bash, а затем запущены через расписание cron. Сегодня мы воспринимаем подобные вещи как должное, но многие задачи приходилось выполнять вручную до создания таких сред, как Bash. Все, что связано с манипуляциями с файлами, такими как архивирование, копирование, перемещение, переименование и удаление файлов, подходит Bash.
Также возможны более сложные манипуляции с файлами. Вы можете найти файлы, созданные в определенные даты, и для каких файлов были изменены права доступа CHMOD и владельца. Bash также отлично подходит для создания интерактивных меню для запуска скриптов и выполнения системных функций. Они выполняются в неграфической среде, но работают очень хорошо. Это отлично подходит для обмена вашими библиотеками скриптов с другими.
Отличия
PowerShell и Bash в чем-то похожи, но также очень разные. Вот четыре основных отличия.
PowerShell по-разному обрабатывает данные
PowerShell отличается от Bash способом обработки данных. PowerShell — это язык сценариев, но он может передавать данные в разных форматах таким образом, чтобы он выглядел как язык программирования. PowerShell также имеет дело с областями действия в своих скриптах.
Использование переменных с $session , $script и $cache дает вашим сценариям дополнительную гибкость, позволяя передавать переменные другим командам в том же сценарии или сеансе PowerShell.
Bash — это CLI
Bash — это CLI (Command Language Interpreter), что означает интерпретатор командного языка. Как и PowerShell, Bash может передавать данные между командами по каналам. Однако эти данные отправляются в виде строк. Это ограничивает некоторые вещи, которые вы можете делать с выводом ваших скриптов, например математические функции.
PowerShell — это и CLI, и язык
Интегрированная среда сценариев PowerShell по умолчанию (ISE — Integrated Scripting Environment), поставляемая с Windows, показывает, как можно быстро и легко создавать сценарии, не жертвуя прямым доступом к командной строке. По умолчанию верхний раздел позволяет набирать строки кода сценария и быстро его тестировать.
Окно ниже представляет собой командную строку PowerShell, которая дает вам быстрый доступ для выполнения отдельных команд. Это дает вам лучшее из обоих миров между языком сценариев и оболочкой командной строки. ISE — отличный инструмент для быстрого создания прототипов решений.
PowerShell и Bash — мощные инструменты
Среда, в которой вы работаете, определит, какой инструмент вы выберете. Системные администраторы Linux, пишущие сценарии в Bash, считают, что освоить сценарии PowerShell относительно легко. Навыки написания сценариев PowerShell также в определенной степени переносятся на сценарии Bash.
Основными различиями между этими двумя языками сценариев являются синтаксис и обработка данных. Если вы понимаете такие концепции, как переменные и функции, тогда изучение любого из этих языков становится проще.
Мини — курс по виртуализации
Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена
Источник