windows强大的工具powershell(基础篇)

声明:

学习视频来自B站up主【泷羽sec],如涉及侵权行为请马上删除文章,文章所提及内容,均为学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!

课程链接:泷羽sec的个人空间-泷羽sec个人主页-哔哩哔哩视频

1、powershell认识&版本信息输出

为什么他叫power,因为他本身是很强大的,一句话概况,cmd能做的powershell都能做,cmd不能做的,powershell都能做。

我们知道cmd可以写一些简单的脚本程序,它实现起来可能并不是很容易,它的一个功能,可拓性并不是很好。但是linux shell,写起来就会方便很多,包括它支持的一些功能,拓展性都会比较好,现在看来,powershell和linux shell有靠拢的迹象。对比来看,这两个shell都很强大,没有高低之分。

win+r 输入powershell 就可以进入powershell了

也可以在cmd中直接输入powershell然后就进入powershell的模式了

不同的系统,内置的一个powershell的版本是不一样的,win7和win8是2.0版本,但是它是支持升级的,可以升级到3.0或4.0这种更高的版本 ,如果windows 2012的话,就是3.0版本。

可以通过输入$psversiontable来查看powershell的版本(ps就是powershell,version就是版本,table是表,这样分开记就好记了,psversiontable)

2、powershell为什么强大

我们可以对一些计量单位进行计算,比如我们可以计算1GB有多大

它也可以用来进行一些简单的运算

除了简单的运算之外,还能够进行一些进制转换、逻辑运算等一些复杂的运算,直接可以当成计算器使用

下面是一些逻辑运算的option选项

-eq:等于
-ne:不等于
-lt:小于
-le:小于或等于
-gt:大于
-ge:大于或等于
-and:逻辑与
-or:逻辑或
-not或!:逻辑非

比如我们想比两个数字,3 -lt 5,也就是说3小于5,返回的是True,说明是正确的

还能够进行16进制的直接转换成10进制

get-service 是一个powershell命令,用于获取计算机上服务的相关信息,包括服务名称、显示名称

如果使用这种命令行的看不太懂,也可以使用图形化的服务管理器

直接在命令窗口输入services.msc

powershell是面向对象的。我们知道编程有两种,一种是面向过程,一种是面向对象。

二者的区别是:

面向过程编程以过程为中心,将任务分解为步骤按顺序执行;面向对象以对象为中心,对象包含数据和操作数据的方法。

像C++ java都是支持面向对象,一般的脚本语言不支持面向对象编程的。C语言是一种典型的面向过程的编程语言,它本身不直接支持面向对象编程的概念。在C语言中没有类(class)和对象(object)的语法结构。不过可以通过一些编程技巧来模拟面向对象的特性

powershell绑定了.net微软平台,我们可以借助.net这么一个强大的库,做很多的操作,实现很多不同的功能。

.NET是一种用于构建多种应用的免费开源开发平台,可以使用C#F#Visual Basic编写.NET应用。.NET用于生成多种类型的应用程序和库开发Web应用、Web API和微服务、云中的无服务器函数、云原生应用、移动应用、桌面应用、Windows WPF、Windows窗体、通用 Windows平台 (UWP)、游戏、物联网 (IoT)、机器学习控制台应用、Windows服务。.NET类库在不同应用和应用类型中共享功能,无论构建哪种类型的应用,代码和项目文件看起来都一样,可以访问每个应用的相同运行时、API和语言功能。

powershell和vbs cmd 之间都可以互相调用,它的兼容性是非常好的。powershell可以管理一个虚拟化产品,比如说虚拟化平台office 365都可以借助powershell,来管理我们一些服务,一些产品,一些虚拟化的产品,一些活动目录,都可以借助Powershell;

总结一下,posershell很方便,面向对象;.net的库也可以任意调用,兼容性非常高,可与很多的类似于,cmd vbs可执行文件等等,一系列的结合起来进行综合调用,可拓展性也非常好。

3、powershell快捷键

其实在powershell中快捷键的一些使用,和linux中的快捷键的使用,是很相似的。

Alt +F7 清除历史记录

PgUp PgDn 翻页效果

End 将光标移动至当前命令的末尾

Esc 清空当前命令行(注意是当前行,不是整页)

F2 自动补充历史命令至指定字符

F4 删除命令行至光标右边指定字符处

F7 对话框显示命令行历史记录

4、powershell 管道和重定向

管道就是一句话概括,上一条命令的输出作为吓一跳命令的输入

这么来说可能不是很好理解,我们举个简单的例子,我们对这个文本去进行一个处理,例如我们先用ls命令列出目录文件信息,在powershell中ls和dir的目的是一样的,都是列出目录下的文件信息。

此时我们用管道符处理一下

ls | format-table Mode,name

这样就会只输出我们想要的信息。也就是说管道符会把第一个命令的输出结果给管道符后面的命令进行处理,将最终的结果回显出来

重定向

是指把内容覆盖写入到一个文件中,>>是在原有的内容后面追加写入

ls | format-table Mode,name > a.txt

把输出结果重定向到a.txt中,我们用type或者cat查看a.txt的内容就会发现数据被写入到了a.txt中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值