首页 > 系统相关 >(5)Powershell别名(Alias)

(5)Powershell别名(Alias)

时间:2024-01-17 20:11:39浏览次数:40  
标签:Set 命令 Get 别名 Alias Powershell

(5)Powershell别名(Alias)

在上一节,介绍了如何检索当前shell及Powershell中所有可用的命令,对于指定的命令会查看其语法信息,可以获取指定命令的帮助信息,包括获取在线帮助主题,详细内容时间戳这嘎达

在本节中,主要介绍Powershell的别名,主要包含以下内容。

  1. 熟悉常见的别名。

  2. 标准别名的规范和创建新的别名。

  3. Powershell中兼容性别名。

  4. 总结


熟悉常见的别名

别名,通俗点说就是另外一个名字,别名将所输入的命令和另外一个命令关联。举个例子,"咪咪"是"猫"的别名。通过使用别名,Powershell允许用户使用替代命令来引用命令。而且,别名使具有其它shell经验的用户在Powershell中重用这些命令来执行类似的操作。

例如:Powershell有一个名为Clear-Host的内部函数,用于清楚输出窗口。如果在命令提示符下输入 cls 或是 clear 命令,Powershell就会将此命令解释为 Clear-Host 函数的别名并允许 Clear-Host函数。

Powershell的别名功能非常有助于开发者了解Powershell,大多数的 cmd.exe 或是 UNIX 用户都有其按名称记忆的大量命令清单,他们在形式上的相似性足以使开发者无需先记住Powershell命令名称即可直接使用这些命令来完成工作。

下面是可以在Powershell中使用的通用的 Cmd.exe 和 UNIX 命令的简短列表。

cat dir mount rm cd echo move rmdir
chdir erase popd sleep clear h ps sort
cls history pushd tee copy kill pwd type
del lp r write diff ls ren

如果经常使用这些命令之一,又想知道其在Powershell中的真实名称,可以通过 Get-Alias命令。

PS C:\Windows\System32\WindowsPowerShell\v1.0> Get-Alias cls

CommandType     Name                                               Version    Source                                                                                     
-----------     ----                                               -------    ------                                                                                     
Alias           cls -> Clear-Host                                                                                                                                        

PS C:\Windows\System32\WindowsPowerShell\v1.0> Get-Alias ls

CommandType     Name                                               Version    Source                                                                                     
-----------     ----                                               -------    ------                                                                                     
Alias           ls -> Get-ChildItem                                                                                                                                      

PS C:\Windows\System32\WindowsPowerShell\v1.0> Get-Alias rmdir

CommandType     Name                                               Version    Source                                                                                     
-----------     ----                                               -------    ------                                                                                     
Alias           rmdir -> Remove-Item         

关于别名应该注意,如果是处理其它来源的Powershell脚本或是代码段,或是希望定义自己的别名,知道有关的别名信息十分重要。同时也应该在意识到,每个开发者都可以定义自己的别名,所以在团队协作编写脚本是,应该尽量避免使用别名。


标准别名的规范

上面提到的别名是为实现与其他shell命令名称的兼容性而设计的,但是Powershell内置的别名与其不同,通常是为了简短易用而设计的,这些简短的命令便于输入,但是如果不了解其含义,则无法正确解读它们。

通过提供一组基于常用动词和名词的速记名称的标准别名,PowerShell在清晰性与简短性之间取得平衡。在一组常用 cmdlet的核心别名中,只需知道速记名称即可解读这些命令。例如,在标准别名中,动词 Get 缩写为 g,动词 Set 缩写为 s,名词 Item 缩写为 i,名词 Location 缩写为 l,而名词 Command 缩写为 cm。 请参考以下表格中的例子。

PS(Powershell)命令 PS(Powershell)别名
Get-Item gi
Set-Item si
Get-Location gl
Set-Location sl
Get-Command gcm

创建新的别名

Powershell命令 Set-Alias cmdlet 可以创建别名,如可以创建以下别名。

Set-Alias -Name gi -Value Get-Item

Set-Alias -Name si -Value Set-Item

Set-Alias -Name gl -Value Get-Location

Set-Alias -Name sl -Value Set-Location

Set-Alias -Name gcm -Value Get-Command

在内部,Powershell启动时会使用此类命令。需要注意的是Powershell内置别名(上面5个别名就是内置别名)是只读的或是常事,意味着Powershell内置的别名使不可修改的。


Powershell中兼容性别名

Powershell有几个转换别名,允许 UNIX 和 Cmd 开发者在Powershell 中使用熟悉的命令名称。下表列出了最常用的别名以及别名背后的Powershell命令和标准的Powershell别名(如果存在的话)。如前文所述,可以使用 Get-Alias cmdlet 查找别名对应的Powershell命令,如 Get-Alias cls 。

CMD命令 UNIX命令 PS(Powershell)命令 PS(Powershell)别名
dir ls Get-ChildItem gci
cls clear Clear-Host(函数) 不可用
del,erase,rmdir rm Remove-Item ri
copy cp Copy-Item ci
move mv Move-Item mi
rename mv Rename-Item rni
type cat Get-Content gc
cd cd Set-Location sl
md mkdir New-Item ni
不可用 pushd Push-Location 不可用
不可用 popd Pop-Location 不可用



总结

通过学习本节内容,应掌握以下内容

  1. Powershell中常见的别名及通过别名查看实际的Powershell命令。

  2. Powershell的别名命名规范以及会新建自己的别名(Powershell内置的别名不可更改)。

  3. 知道Powershell中兼容性别名

标签:Set,命令,Get,别名,Alias,Powershell
From: https://www.cnblogs.com/zhang-snail/p/17970866

相关文章

  • (4)Powershell基础知识(二)
    (4)Powershell基础知识(二)上一节主要介绍Powershell可发现,面向对象,一致性等特性,以及Powershell命令是基于.Net对象等重要概念,以及Powershell命令的命名规范,详细内容点击这嘎达。这一节的Powershell基础知识主要包含以下知识点获取命令的摘要信息。获取命令的帮助信息。......
  • (3)Powershell基础知识(一)
    (3)Powershell基础知识(一)上节介绍了Windows自带的Powershell开发工具:命令行行窗体和集成开发环境ISE的启动及一些配置注意事项,具体细节使劲戳Powershell开发工具。这一节介绍Powershell的基础知识,包含以下知识点Powershell的一些特性理解Powershell中的一些重要概念......
  • 如何编写一个 PowerShell 脚本
    PowerShell脚本的后缀是.ps1前提:ps1脚本可以帮忙我们快速修改文件内容,还不需要调用文件的底层api,方便快捷在编写CMakeLists时发现,项目不能够很好的使用vcpkgtoolchain,哪怕是在命令行中指定vcpkg.cmake如果只是简单的项目,vcpkgtoolchain可以正常工作,但是在稍微复......
  • 在CMD和PowerShell下如何制作图片马
    目录在CMD中使用copy命令:在PowerShell中使用gc命令:总结:图片马通常是在图片文件中嵌入其他信息,以隐藏额外的数据。当使用命令行工具(如CMD或PowerShell)制作图片马时,copy命令和Get-Content(简写为gc)命令的目标是将一段数据(可能是一段脚本或其他二进制数据)嵌入到图片文......
  • (2)Powershell开发工具
    (2)Powershell开发工具在上一节对Powershell进行了简单介绍,详细内容参考Powershell简介,这一节介绍Powershell的开发工具及其设置注意事项。本文包含以下知识点如何启动WindowsPowershell命令行开发工具WindowsPowershell命令行的简单设置如何启动WindowsPowershel......
  • (1)Powershell简介
    (1)Powershell简介本文会包含以下三个知识点什么是Powershell?学习Powershell有什么好处?学习Powershell需要哪些条件?什么是Powershell?Powershell(WindowsPowershell)是Microsoft为Windows设计的新的命令行程序,这个Windows内置的命令行shell包括交互式提示和脚本环......
  • 利用PowerShell修改网络配置
    title:利用PowerShell修改网络配置date:2022-03-30categories:编程tags:-PowerShell-网络-Windows前言修改IP、网关、子网掩码、DNS等配置时需要打开网络配置器配置,有些麻烦。尤其是经常需要重复性操作时(例如去学校图书馆蹭网)。用PowerShell脚本自动修改,方便简单而......
  • 【Powershell】管理DHCPServer
    欢迎购买课程:https://edu.51cto.com/course/35515.html适合人群:对Powershell和域控有一定基础和感兴趣的运维你将会学到:利用Powershell创建和管理DHCPServer课程简介:本课程将教你利用Powershell创建和管理DHCPServer,特别是管理DHCPFailover,详解故障转移中的负载均衡和热备模式的差......
  • 【Powershell】域用户提权
    适合人群:适合对Powershell和域有一定基础和感兴趣的运维。课程目标:利用Powershell和计划任务让普通用户能用管理员权限执行程序或脚本课程简介:以往都需要借助收费第三方软件来完成的事情,现在可以通过强大的Powershell完成。利用Powershell和计划任务让普通用户能用管理员权限执行......
  • 绕过安全限制,通过cmd执行PowerShell脚本(2)
    之前的做法是将PowerShell脚本的代码拼接成一个大字符串,然后通过在cmd中运行powershell去直接运行。现在觉得,多少有些脱裤子放屁。其实可以直接在cmd中设置脚本运行策略。改进后的脚本如下:首先是run.bat@echooffFOR/F"tokens=*USEBACKQ"%%FIN(`powershellGet......