设为首页 收藏本站
查看: 1992|回复: 0

Powershell中命令自动补全功能及使用Windows命令

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-12-20 08:39:04 | 显示全部楼层 |阅读模式
上一节主要介绍了Powershell中常见的别名,以及怎么通过别名查看真实的Powershell命令,Powershell别名的命名规范以及如何新建自己的别名(Powershell内置别名不可更改)以及Powershell中兼容性别名,详细内容点击这里。

在本节主要包含以下内容。

  • Powershell命令自动补全功能。
  • 在Powershell中使用cmd命令。
  • 总结




Powershell中命令自动补全功能
Powershell命令自动补全的功能也称为Tab扩展,自动补全的功能可以大大提高命令输入的速度和准确度,在Powershell中通过Tab键来使用自动补全的功能。

  • 文件名或路径的自动补全功能
    如在某一路径下,想输入文件名,可以输入部分内容,按Tab键来补全。

1
2
PS C:\> cd D:\MyPowerShell
PS D:\MyPowerShell> M<Tab>



按下Tab键时,Powershell会自动将该名称扩展为其找到的第一个匹配项。重复按 Tab 键将逐一显示所有可用选项。上面一条命令执行的结果如下
1
2
PS C:\> cd D:\MyPowerShell
PS D:\MyPowerShell> .\Mandatory.ps1



如果想显示之前的选项,可以按Shift+Tab键来切换之前的选项。
  • cmdlet命令自动补全功能

cmdlet 命令的Tab 扩展略有不同。如果要对 cmdlet 名称使用 Tab 扩展,请输入命令名称的第一部分(动词)及其后面的连字符。可以填入名称的更多部分以进行更准确的匹配。例如,如果输入 get-co 然后按 Tab 键,PowerShell 会将其自动扩展为 Get-Command cmdlet(其字母大小写也将更改为标准形式,虽然Powershell命令不区分命令的大小写)。继续按 Tab 键,PowerShell 将使用仅有的另一个匹配 cmdlet 名称 Get-Content 替换上一名称,按Shift+Tab可以切换到上一条命令,即Get-Command。
    可以在同一行上重复使用 Tab 扩展和Shift+Tab扩展。例如,可以通过输入以下命令来对 Get-Content cmdlet 的名称使用 Tab 扩展:
1
PS> Get-Con<Tab>



    按 Tab 键时,该命令将扩展为:
1
PS> Get-Content



    继续按 Tab 键时,该命令将扩展为:
1
PS> Get-Commond



    按Shift+Tab键,又可以切换到上一条命令。
1
PS> Get-Content



注意: Tab 扩展的局限之处在于 Tab 始终被解释为尝试完成单词。如果根据命令无法匹配到任何一条合适的命令,Powershell不会出现预期的结果。

在Powershell中使用cmd命令
所有的Windows 命令都可以在Powershell中执行,而且可以在 Powershell 命令提示符下启动具有图形用户界面的 Windows 程序(如记事本,计算器,画图等)。还可以捕获 Windows 程序生成的文本(Windows命令执行的结果),并在 PowerShell 中使用进一步使用该文本内容。
举个例子,在Powershell中使用IPConfig命令。
1
2
3
4
5
6
7
8
9
10
PS D:\MyPowerShell> ipconfig

Windows IP Configuration

Ethernet adapter 本地连接:

        Connection-specific DNS Suffix  . :
        IP Address. . . . . . . . . . . . : 192.168.1.124
        Subnet Mask . . . . . . . . . . . : 255.255.255.0
        Default Gateway . . . . . . . . . : 192.168.25.1




也可以使用 PowerShell cmdlet(如 Select-String)处理 Windows 程序返回的文本。
1
2
3
PS D:\MyPowerShell> ipconfig | Select-String -Pattern 255

        Subnet Mask . . . . . . . . . . . : 255.255.255.0



    上面命令使用管道运算符(|)将 IPConfig 命令的结果发送到 PowerShell的 Select-String cmdlet,Select-String会搜索Window命令程序执行结果的字符串中的文本。上面的命令是查找包含255的内容。
    当 Windows 命令或工具带有参数时,如 Shutdown 的“-r”(重新启动)参数,PowerShell 会将参数传递给该工具而不解释它们。
    需要注意的是,如果该工具使用 PowerShell 保留字或者使用 PowerShell 不熟悉的命令格式,如 Nant 的“-D:debug=false”参数(PowerShell 将此参数解释为两个参数:“-D”和“debug=false”),请用引号将参数括起来,以指示 PowerShell 应该将参数发送给该工具而不进行解释。


总结
通过学习本节,应当掌握以下内容。
  • 会使用Powershell的命令自动补全功能。
  • 了解所有的Windows命令都可以在Powershell中执行。



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-316687-1-1.html 上篇帖子: Shell 脚本远程批量执行命令 下篇帖子: SHELL DATE 命令详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表