二、PowerShell选择及使用
1、PowerShell分类
主要分两大类,之前简单提过的控制台应用程序PowerShell以及带界面的PowerShell_ISE。而如果是64位系统的话则还包括32位的命令行控制台和图形化界面控制台,因此,64位的系统可以说包含4个PowerShell控制台,而32位系统则包含2个PowerShell控制台。其中,后缀显示’x86’的则是32位的控制台。
需要注意的是:有些扩展程序只支持32位环境,不支持64位系统中。微软现在已经把全部精力放到64位系统中,而32位仅用于向后兼容。
2、控制台窗口
- PowerShell不支持双字节字符集,也就是说大部分非英语语言不能很好的展示出来。
- 剪切操作私用的是非标准键,意味着使用起来较为不便。
- PowerShell在输入时会提供少量帮助信息,在PowerShell v5中有很大的提升。在win10中,微软修改了命令行Shell,解决了一些我们提到过的长期问题,因此你的使用体验在v5中会略有不同。
综上,PowerShell控制台应用程序将是你在没有安装GUI Shell的服务器上运行PowerShell的唯一选择。其优点是:控制台非常轻量,可以快速加载且不需要太多内存。不需要任何非PowerShell自身必需的 .NET Framework之外的资源。
在属性界面,可以设置字体,便于区分相似字符,比如:`(重音符) 和 ‘(单引号)。
在【布局】标签页,把所有的“宽度”设为相同的数值,并且确保输出结果窗体能适合你的显示屏。如果设置不合理,会导致PowerShell窗体下方出现水平滚动条。这可能导致一部分输出结果被挡住,这会导致你忽略这些输出结果。
需要记住一件事:这个控制台应用程序并不是真正的PowerShell,仅仅是你和PowerShell交互的界面。控制台应用程序本身可以追溯到大约1985年,所以你不要指望能从中得到流畅的体验。
3、集成脚本环境(ISE)
优点:ISE界面友好且支持双字节字符集,使用标准的复制、黏贴按键
缺点:要求Windows Presentation Foundation(WPF),意味着不能在没有安装GUI的服务器上运行ISE,启动和运行需要较长时间。
4、代码输入
控制台应用程序支持4种"Tab 键补全"。
- 输入"Get-S",然后按几下Tab键,再按Shift+Tab组合键。
- 输入"Dir",按空格键,然后输入"C:",再按Tab键,PowerShell会从当前文件夹开始循环遍历所有可用的文件和文件夹。
- 输入"Set-Execu",按Tab键,然后输入一个空格和横杠(-),再开始按Tab键,可以看到PowerShell循环显示当前命令的所有可用参数。另外,也可以输入参数名的一部分,例如-E,然后按Tab键,开始循环匹配参数名。按Esc键可以清空命令行。
PowerShell ISE提供了类似功能,甚至可以说比“Tab键补全”功能更好的功能:智能提示。智能提示可以在ISE的控制台窗格和脚本编辑窗格中工作。
当在PowerShell中输入时,请极其小心。在某些情况下,一个错位的空格、引导或者单引号都会带来错误或者失败。如果出现了错误,请再三检查你的输入内容。
5、常见误区
- 控制台应用程序中的水平滚动条,避免漏看信息
- 32位VS64位,建议使用64位应用程序
- 确保PowerShell应用程序的窗体标题显示“管理员”,如果没用的话则关闭窗体后右键选择“以管理员身份运行”。
6、查看当前版本
输入”$PSVersionTable“并按回车键获取:
现在就开始使用PowerShell,首先检查你的PowerShell版本是否满足最低的3.0版本,如果不是,请先至少升级到V3版本。
7、最后
- 选择适合你自己的字体和颜色
- 确保控制台应用程序下方没有水平滚动条
- 在ISE中,最大化控制台窗格,移除或最小化命令管理器
- 在所有应用程序中,输入一个单引号(‘)和一个重音符(`),确保你可以轻易区分它们。
- 同样输入括号(()),中括号([]),尖括号(<>)和花括号({}),确保你所选择的字体和大小能很好地展示这些符号,足以让你马上区别它们。否则,请选择其他字体或者加大字体大小。