如何在RHEL/CentOS 8/7上安装PowerShell

时间:2020-02-23 14:30:51  来源:igfitidea点击:

PowerShell是最初由Microsoft为Windows系统编写的一种脚本语言,但是已经实现了对Linux/Unix系统的支持。如果我们是Windows背景的Windows开发人员或者系统管理员,则一定使用PowerShell。

PowerShell是一种功能强大的面向对象的脚本语言,对对象,类和方法的支持非常类似于任何OOP语言。这些功能在传统的Linux Shell上不可用。本指南将在Red Hat Enterprise Linux/CentOS 7/8计算机上安装PowerShell。

添加PowerShell存储库

默认的CentOS/RHEL存储库上没有PowerShell PowerShell RPM软件包。好吧,使用命令添加正式的Microsoft存储库。

curl https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo

现在正在滚动安装PowerShell Core。

在RHEL/CentOS 8/7上安装PowerShell

我们继续在RHEL/CentOS 8/7系统上安装PowerShell。该命令在终端上运行以执行操作。

sudo yum install -y powershell

rpm命令显示有关已安装的PowerShell软件包的更多信息。

$rpm -qi powershell 
Name        : powershell
Version     : 6.2.0
Release     : 1.rhel.7
Architecture: x86_64
Install Date: Sun 28 Apr 2019 03:18:56 AM EAT
Group       : shells
Size        : 157846730
License     : MIT License
Signature   : RSA/SHA256, Mon 25 Mar 2019 10:53:15 PM EAT, Key ID eb3e94adbe1229cf
Source RPM  : powershell-6.2.0-1.rhel.7.src.rpm
Build Date  : Mon 25 Mar 2019 08:43:28 PM EAT
Build Host  : 01a688a797cd
Relocations :/
Packager    : PowerShell Team <theitroad@localhost>
Vendor      : Microsoft Corporation
URL         : https://microsoft.com/powershell
Summary     : PowerShell is an automation and configuration management platform.
Description :
PowerShell is an automation and configuration management platform.
It consists of a cross-platform command-line shell and associated scripting language.

在RHEL/CentOS 8/7上启动并使用PowerShell

安装后,使用以下命令启动PowerShell:

$pwsh
PowerShell 6.2.0
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/pscore6-docs
Type 'help' to get help.

PS /root>

让我们运行一些命令来确认我们的PowerShell在RHEL/CentOS服务器上正常工作。

PS /root> pwd

Path
---
/root

PS /root> mkdir /tmp/test
PS /root> cd /tmp/test
PS /tmp/test> pwd

Path
---
/tmp/test

PS /tmp/test> get-process | more

 NPM(K)    PM(M)      WS(M)     CPU(s)      Id  SI ProcessName
 ------    -----      -----     ------      --  -- ----------
      0     0.00       0.86       0.02    3482 …82 agetty
      0     0.00       0.85       0.02    3483 …83 agetty
      0     0.00       2.00      69.49   15645 …26 apps.plugin
      0     0.00       0.00       0.02     652   0 ata_sff
      0     0.00       0.92       0.02    3481 …81 atd
      0     0.00       0.88       1.36    1625 …25 auditd
      0     0.00       1.51       0.94   15884 …26 bash
      0     0.00       3.01       0.07   15931 …31 bash
      0     0.00       0.00       0.00      23   0 bioset
      0     0.00       0.00       0.00      24   0 bioset
      0     0.00       0.00       0.00      25   0 bioset
      0     0.00       2.04       2.92    2138 …30 chronyd
      0     0.00       1.64       7.00    3479 …79 crond
      0     0.00       0.00       0.00      42   0 crypto
      0     0.00       2.40      25.34    2110 …10 dbus-daemon
      0     0.00       0.00       0.00      67   0 deferwq
      0     0.00       2.66       0.06    3208 …08 dhclient
      0     0.00       0.00       0.00      28   0 edac-poller
      0     0.00       0.00       0.00    1323   0 ext4-rsv-conver
      0     0.00      28.22       0.77    2418 …18 firewalld
      0     0.00       9.42     533.72    3673 …26 go.d.plugin
      0     0.00       0.00       0.00      54   0 ipv6_addrconf
      0     0.00       1.20     210.99    2101 …01 irqbalance
      0     0.00       0.00       9.31    1317   0 jbd2/sda1-8
.....................................................................