Windows PowerShell和命令行的区别

简介:

Windows 7 中开始有了一个PowerShell,实际是增强版的命令行工具。到了 Windows 10,它变成了默认的命令行工具。

PowerShell比之前的命令行复杂得多,当然也强悍得多,为了方便,后面我们简称之前的命令行工具还是命令行。命令行使用上和Linux终端差别很多,体验也差很多。但是PowerShell就强多了,而且命令行的命令基本可以直接在PowerShell中使用。

PowerShell使用的命令叫小命令 - cmdlet。系统的很多管理任务,小到注册表操作,大到WMI (Windows Management Instrumentation) ,都可以通过PowerShell搞定,但是命令行搞不定!
cmdlet入门可以通过这一篇文章:https://www.howtogeek.com/114344/5-cmdlets-to-get-you-started-with-powershell/

PowerShell也是用了管道,这和Linux一样,所以你可以把多个命令连接起来处理数据。但是PowerShell对管道也进行了增强:Unix系统中管道只能用于处理文本,而PowerShell可以处理“对象”:PowerShell是面向对象的,里面几乎任何东西都是对象,你执行命令的返回都是对象。
PowerShell对象的入门可以看这一篇:https://www.howtogeek.com/138121/geek-school-learning-powershell-objects/

PowerShell不仅是一个命令行工具,更是一个脚本工具。你可以在里面编写复杂的脚本来执行系统管理任务。老命令行也不行!
命令行其实只是对DOS命令的改造,所以能力有限。虽然也能执行脚本,但是脚本比较复杂。

那么我们要用PowerShell吗?
It depends!

如果你就是用用ping或者ipconfig,那还是用命令行吧。虽然这些命令也能在PowerShell里用,不过有点大材小用!

但是如果想批量修改文件夹里的文件,就可以用PowerShell。否则可能需要其他软件才行,因为命令行是搞不定的。
至于怎么批量改名,请看https://www.howtogeek.com/111859/how-to-batch-rename-files-in-windows-4-ways-to-rename-multiple-files/

PowerShell支持强大的脚本编辑执行能力,所以Windows系统管理员可能更青睐。

最后说一点:为什么命令行的命令可以在PowerShell执行呢?其实很多并不是PowerShell的内置命令,是因为PoweShell把他们作为小命令的“别名”了。可以通过get-alias查看

get-alias cd

CommandType     Name                                               Version    Source
--
Alias           cd -> Set-Location
目录
相关文章
|
2月前
|
监控 关系型数据库 MySQL
PowerShell 脚本编写 :自动化Windows 开发工作流程
PowerShell 脚本编写 :自动化Windows 开发工作流程
77 0
|
3月前
|
Windows
Powershell 重新排列去重 Windows环境变量
【9月更文挑战第13天】本文介绍如何使用PowerShell对Windows环境变量进行重新排列和去重。首先通过`$env:`访问环境变量,接着使用`-split`命令分割路径,再利用`Select-Object -Unique`去除重复项。之后可根据需要对路径进行排序,最后将处理后的路径组合并更新环境变量。注意修改环境变量前应备份重要数据并了解潜在影响。
138 10
|
2月前
|
安全 Shell Linux
内网渗透测试基础——Windows PowerShell篇
内网渗透测试基础——Windows PowerShell篇
118 0
|
2月前
|
Windows
Windows 11 鼠标右键可选择 cmd 命令行选项
Windows 11 鼠标右键可选择 cmd 命令行选项
53 0
|
4月前
|
Linux Windows
【Linux】grub命令行引导进入windows系统
【8月更文挑战第20天】在Linux中通过GRUB命令行引导Windows的方法包括:1) 进入GRUB命令行模式,启动时按`c`键;2) 使用`ls`查找含Windows引导文件的分区,如`bootmgr`或`ntldr`;3) 设置根设备`root=(hd0,msdos3)`与链加载器`chainloader +1`;4) 输入`boot`命令启动Windows。请注意实际步骤可能因系统配置而异。
476 2
|
7月前
|
弹性计算 运维 安全
阿里云服务器Windows和Linux操作系统区别对比
阿里云服务器Windows和Linux操作系统区别对比,性能有差异吗?有,同配置下Linux性能要优于Windows,但这与阿里云无关,仅仅是linux和windows之间的区别。另外,阿里云提供的windows和linux操作系统均为正版授权,用户不需要额外支付许可费用,如何选择?看用户自己的应用程序情况。
|
7月前
|
缓存 网络协议 Linux
碎片技能:在 Windows 的任意目录一键快捷进入 CMD 命令行界面
在Windows 10/11中,SaaS服务商常需使用命令行,如PowerShell或CMD。本文介绍了如何进入DOS命令行:通过“开始”菜单→“运行”→输入“cmd”,然后确认。此外,还展示了如何在任意目录快速启动DOS命令行,只需右键点击并选择相应菜单项。提供两种实现方法:一是导入注册表文件,二是使用名为ContextMenuManager的优化软件。建议使用软件方法,易于添加和删除菜单项。
90 1
碎片技能:在 Windows 的任意目录一键快捷进入 CMD 命令行界面
|
7月前
|
存储 Windows
windows系统的符号链接和硬链接的区别
【5月更文挑战第27天】windows系统的符号链接和硬链接的区别
168 0
|
7月前
|
Windows
【vscode】 VsCode终端崩溃C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe已终止,退出代码:2
【vscode】 VsCode终端崩溃C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe已终止,退出代码:2
835 1
|
7月前
|
弹性计算 运维 安全
阿里云服务器linux和windows镜像有啥区别?
阿里云服务器linux和windows镜像有啥区别?阿里云服务器镜像Windows和Linux操作系统有什么区别?性能有差异吗?有,同配置下Linux性能要优于Windows,但这与阿里云无关,仅仅是linux和windows之间的区别。另外,阿里云提供的windows和linux操作系统均为正版授权,用户不需要额外支付许可费用,如何选择?看用户自己的应用程序情况
下一篇
DataWorks