PowerShell基本使用教程

 更新时间:2020年09月23日 12:01:49   作者:诸子流  
这篇文章主要介绍了PowerShell的基本使用,帮助大家更好的理解和学习power shell,感兴趣的朋友可以了解下

一、说明

1.1 背景说明

个人对PowerShell也不是很熟悉,开始的时候就突然看到开始菜单中多了个叫PowerShell的文件夹,后来一点就看到某个教程视频说PowerShell很厉害但也没怎么听,再后来就看到kali也有了一些PowerShell的脚本这才意识到PowerShell应该确实有独到之处而且正在逐渐受到认可,不过我使用PowerShell是不久前网上看到篇文章说PowerShell可以算数所以常当个计算器使用。直到昨天看了《Windows PowerShell实战指南》才算有了比较完整的了解。

1.2 PowerShell是什么

很多人上来就什么基于.Net强无敌,首先作为用户我不关心你是什么技术,我首先想知道的是你提供的是什么东西、怎么用。

PowerShell,从名字可以知道,他首先是一个shell,shell的意思就是和Linux的bash等一样、和原来的cmd一样就是在里边敲命令(可执行文件)使用;

而Power就意味他是一个功能强大的shell,从面向用户而言,个人觉得其功能强大体现在以下几方面:

(1) 微软态度。微软是真正的在推行PowerShell,包括Office等更多自家软件,底层都是调用PowerShell来实现。

(2) 兼容性cmd。PowerShell包含原先cmd的所有命令,原先命令使用形式不变,在是在其基础上添加命令。

(3) 对标Linux。PowerShell使用了Linux Shell的思想,也就是所有的系统操作、配置,都可以在shell中敲写命令实现。

(4) 统一的命令格式和自包含的文档。基于前3点我们即可以说PowerShell已可与Linux Bash等一较高下,如果再加上后发优势那就可以让人相信PowerShell可以成功。对于bash等shell你觉得最大的缺点是什么?从我角度而言我觉得是成本很高,最开始是我不知道用什么命令不太记得使用什么命令我需要百度一下,二是我经常忘记命令参数格式怎么写要在良莠不齐的网上百度半天(man手册?对不起我真的经常没看懂,我博客之前写了不少关于shell命令的文章就是备忘用,网上那么多关于shell命令的文章也说明不是因为我特别蠢)。而这就是PowerShell的两个优点:第一点是PowerShell所有命令使用统一的cmdlet命令格式(也就是“动词-名词”的格式,比如get-process)会使人很容易记住;第二点这里所谓自包含是指你要干一件事你可以逐步找到要做的事所需的所有命令,即便你记不得命令你也可以很容易找到,你找到命令看文档就很容易知道怎么使用。

当然powershell很好但也有着其劣势:

(1)Linux和Windows系统本身定位的差异。Linux的免费稳定使其牢牢占据了服务器领域,Linux Shell命令是没有很多统一格式的因此工程师们要费很大的劲去学习,而当Linux占据工程师的大部分精力并塑造完他们的习惯后,工程师们也许并没有那么多精神和动力去学powershell。

(2)来自Windows GUI的竞争。Windows上命令能干的事GUI也都能干也许效率慢一些但普通用户可不想去黑漆漆的界面敲感觉不受控制的命令。

Linux占据了服务器工程师的日常,而Windows自身强大的GUI对普通用户有天然的亲和力,所以powershell能期望的目标用户是谁呢,Windows服务器运维工程师好像没见过专门设有这职位。

二、PowerShell使用

下边我们将假设我们对powershell一无所知,通过杀除一个notepad进程的操作过程,来看一下什么叫powershell的“统一的命令格式和自包含的文档”。

我这里并不介绍一堆命令----命令是介绍不过来的我这里是win7到了win10你会看到多出一倍不止的命令,以后还会更多----而是介绍powershell的使用思路,其他工作都可借助类似的思路来进行。

2.1 启动PowerShell

方法一: 直接在cmd中执行powershell,切换为powershell

方法二: 开始菜单中输入powershell启动powershell

方法三: 开始菜单----附件----powershell启动

带x86的是32位的,不带的是64位的;带ies的是简单的ide

2.2 使用powershell

powershell启动后界面如下

2.2.1 get-help查看帮助

我们一无所知,所以我们输入help试一下,很好,powershell确实支持help

(不过我们前边说过powershell命令是cmdlet格式,help也使用cmdlet格式,help只是get-help的一个别名)

2.2.2 get-command查看有哪些命令

在确定powershell支持get-help之后,首先我们需要知道powershell支持哪些命令,在上图get-help中可以看到可以使用get-command查看powershell支持的命令

CommandType列,表示命令类型,Alias是别名、Cmdlet是powershell格式的命令、Function是函数

Name列,就是命令

Definition列,命令功能的简单描述

2.2.3 get-command缩小范围

上面的命令太多了,我们需要缩小范围以确定类似ps功能的命令在powershell中是什么(当然我们说过powershell兼容cmd所以可以直接用ps,但这不是我们这里想要的)

查看信息都是get-开头,所以我们猜测查看进程的命令也以get-开头,执行get-command get-*试一下

结果如下图所示,列出了所有get开头的命令,其中我们看到有一个叫get-process的命令,一看就是获取进程信息的

2.2.4 get-process查找进程

我们将命令锁定在了get-process但是我们不知道这个命令怎么用,2.2.1中说可以通过get-help command的形式查看帮助,我们也试一下

可以看到所有选项都是带中括号的,所以直接执行get-process就可以了

但是可以猜测,没有任何过滤条件返回的肯定是所有进程列表这需要过滤,可以看到-name参数可以过滤进程名,为保险起见我们还加上*号通配符

整个要执行的命令就是:get-process -name *notepad*

2.2.5 stop-process杀除进程

第一个思路是:在get-help get-process中已看到相关链接中有stop-process,这大概率是杀除进程的命令

第二个思路是:获取进程是get-process,那么杀除进程也大概率是xxx-process

执行:get-command *process

可以看到就5个命令,而其中只有stop-process比较像,一样使用get-help来查看帮助顺便确认是不是

显而易见确实是,而且杀除命令就是:stop-process -id pid

以上就是PowerShell的基本使用的详细内容,更多关于PowerShell使用的资料请关注脚本之家其它相关文章!

相关文章

  • PowerShell中字符串分行显示的两种方法技巧

    PowerShell中字符串分行显示的两种方法技巧

    这篇文章主要介绍了PowerShell中字符串分行显示的两种方法技巧,本文直接给出代码实例,需要的朋友可以参考下
    2015-05-05
  • Windows Powershell 创建数组

    Windows Powershell 创建数组

    在日常处理中,除了使用像“数值类型”和“字符串类型”外,还需要使用能够包含其他对象的“集合”类型。大多数常见语言,都提供一些操作集合类型的语法。最基本的集合类型就是数组类型,它提供了一种下标基于0的数组对象。
    2014-09-09
  • PowerShell实现的文件同步脚本分享

    PowerShell实现的文件同步脚本分享

    这篇文章主要介绍了PowerShell实现的文件同步脚本分享,本文直接给出实现代码,需要的朋友可以参考下
    2015-05-05
  • Powershell中阻止”确认提示”的方法

    Powershell中阻止”确认提示”的方法

    这篇文章主要介绍了Powershell中阻止”确认提示”的方法,本文直接给出操作代码示例,需要的朋友可以参考下
    2015-03-03
  • PowerShell脚本开发之对指定IP进行端口扫描

    PowerShell脚本开发之对指定IP进行端口扫描

    在本文通过一段小脚本的方式引入了通过PowerShell实现简单安全渗透功能的想法,首先介绍了该小脚本是如何实现功能的,接下来对创建脚本工具集并导入的方法,随后又在该工具集中创建了Test-TCPPort函数,并介绍了调用方法.
    2014-10-10
  • PowerShell DSC组件 xExchange 发布

    PowerShell DSC组件 xExchange 发布

    这篇文章主要介绍了PowerShell DSC组件 xExchange 发布,xExchange实现可以在PowerShell中使用DSC来部署和配置Exchange,需要的朋友可以参考下
    2015-04-04
  • Powershell小技巧之使用WS-Man来调用PowerShell命令

    Powershell小技巧之使用WS-Man来调用PowerShell命令

    大多Windows系统的管理员应当已经意识到在Windows系统上进行脚本开发和命令行管理,PowerShell首当其冲。微软许多产品和一些第三方产品都提供了Windows PowerShell的管理接口。但是目前PowerShell只能运行在Windows系统上,如何才能在非Windows系统上管理windows系统呢
    2014-10-10
  • 了解Powershell中的Exit函数

    了解Powershell中的Exit函数

    这篇文章主要介绍了了解Powershell中的Exit函数,对exit的函数使用技巧上做了小结,并用实例说明了exit函数的使用,需要的朋友可以参考下
    2014-07-07
  • Powershell小技巧之创建短网址

    Powershell小技巧之创建短网址

    短网址服务,可能很多朋友都已经不再陌生,特别是在微博应用中十分普遍,比如,当我们在腾讯、新浪微博发微博时有时发很长的网址连接,但由于微博只限制140个字,所以微博就自动把您发的长网址给转换成短网址了。今天我们来探讨下,如何用powershell来便捷的使用短网址
    2014-10-10
  • powershell实现可以一直单击J键的脚本

    powershell实现可以一直单击J键的脚本

    这篇文章主要为大家介绍了powershell实现可以一直单击J键的脚本思路及示例演示,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11

最新评论