当前位置: 首页 > 科技观察

微软爱上Linux:当PowerShell来到Linux

时间:2023-03-15 18:28:42 科技观察

微软爱上Linux后,PowerShell这个原本只适用于Windows的组件于2016年8月18日开源,成为一款跨平台软件,登陆Linux和macOS。PowerShell是微软开发的自动化任务和配置管理系统。它基于.NET框架,由命令行语言解释器(shell)和脚本语言组成。PowerShell提供对COM(组件对象模型)和WMI(WindowsManagementInstrumentation)的完全访问,允许系统管理员在本地或远程Windows系统上执行管理任务,以及WS-Management和CIM(通用信息模型)访问以实现管理远程Linux系统和网络设备。使用此框架,管理任务基本上由称为cmdlet(发音为command-lets)的.NET类执行。就像Linuxshell脚本一样,用户可以根据一定的规则将一组cmdlet写入文件,从而制作脚本或可执行文件。这些脚本可以用作独立的命令行程序或工具。在Linux中安装PowerShellCore6.0要在Linux中安装PowerShellCore6.0,我们将使用Microsoft软件存储库,它允许我们通过流行的Linux包管理器工具(如apt-get、yum等)进行安装。在Ubuntu16.04中安装首先,导入此公共存储库的GPG密钥,然后使用APT源注册MicrosoftUbuntu存储库以安装PowerShell:$curlhttps://packages.microsoft.com/keys/microsoft.asc|sudoapt-keyadd-$curlhttps://packages.microsoft.com/config/ubuntu/16.04/prod.list|sudotee/etc/apt/sources.list.d/microsoft.list$sudoapt-getupdate$sudoapt-getinstall-ypowershell在Ubuntu安装14.04中的$curlhttps://packages.microsoft.com/keys/microsoft.asc|sudoapt-keyadd-$curlhttps://packages.microsoft.com/config/ubuntu/14.04/prod.list|sudotee/etc/apt/sources.list.d/microsoft.list$sudoapt-getupdate$sudoapt-getinstall-ypowershell在CentOS7上的安装首先将MicrosoftRedHat仓库注册到YUM包管理器仓库列表中,然后安装PowerShell:$sudocurlhttps://packages.microsoft.com/config/rhel/7/prod.repo>/etc/yum.repos.d/microsoft.repo$sudoyuinstall-ypowershell如何在Linux中使用PowerShellCore6.0在本节中,我们将简化ly介绍PowerShell;我们将了解如何启动PowerShell、运行一些基本命令以及操作文件、目录和进程。然后学习如何列出所有可用命令、显示命令帮助和别名。输入以下命令启动PowerShell:$powershell要在Linux中启动PowerShell,您可以使用以下命令检查PowerShell版本:$PSVersionTable查看PowerShell版本在Linux中运行基本的PowerShell命令。get-date[#displaycurrentdate]get-uptime[#displayboottime]get-location[#displaycurrentworkingdirectory]在PowerShell中操作文件和目录1.创建空文件有两种方式:new-itemtecmint。tex或"">tecmint.tex并向其添加内容并查看文件内容。set-contenttecmint.tex-value"TecMintLinuxHowTosGuides"get-contenttecmint.tex在PowerShell中创建一个新文件2.在PowerShell中删除一个文件remove-itemtecmint.texget-contenttecmint.tex在PowerShell中删除一个文件3.创建一个目录mkdirtecmint-filescdtecmint-files"">domains.listls在PowerShell中创建目录4.执行长格式列表操作列出文件/目录的详细信息,包括模式(文件类型)、***修改时间等,使用以下命令:dirPowershell5.显示系统中所有进程:get-process显示PowerShell中正在运行的进程6.按给定名称查看正在运行的进程/进程组的详细信息,并将进程名作为参数传递以上命令如下如下:get-processapache2在PowerShell中查看指定进程的输出中各部分的含义:NPM(K)–进程使用的非分页内存,单位:Kb。PM(K)–进程使用的可分页内存,单位:Kb。WS(K)–进程工作集的大小,单位:Kb,工作集由进程引用的内存页组成。CPU(s)–进程在所有处理器上使用的处理器时间,以秒为单位。ID–进程ID(PID)。ProcessName–进程名称。7.如果想了解更多,获取PowerShell命令列表:get-commandlistsPowerShellcommands8.如果想知道如何使用命令,查看其帮助(类似于Unix/Linux中的man);例如,你可以得到命令的帮助描述如下:get-helpDescribePowerShellHelpManual9.要显示所有命令的别名,输入:get-alias列出PowerShell命令的别名10.***,但是同样非常重要的是,显示命令历史记录(曾经运行过的命令列表):history显示PowerShell命令历史记录,仅此而已!在本文中,我们展示了如何在Linux上安装Microsoft的PowerShellCore6.0。在我看来,与传统的Unix/Linuxshell相比,PowerShell已经取得了长足的进步。目前看来,PowerShell还需要在命令行操作机,更重要的是编程(编写脚本)等方面提供更好、更精彩、更高效的功能。作者简介:AaronKili是一名Linux和F.O.S.S爱好者,未来的Linux系统管理员,Web开发人员,目前是TecMint的内容编辑,一个热爱研究计算机并致力于分享知识的人。