Windows PowerShell 和 Linux BashShell 极简对比

声明:本文不会涉及原理,详细的介绍,也不是入门文章。仅仅从使用上进行简单比较

命令

在 bash 中,一个命令是一个单独的进程;而在 PowerShell 中,命令被称为 cmdlets,他们不是独立的可执行程序,他们是一个个可以按需加载的模块。

在 PowerShell 中,命令的命名遵从 Verb-Noun 范式。但是为了降低使用门槛,方便其他 shell 用户上手,其对常用的命令使用 alias 做了兼容。

cmdlets 有两类,一类是使用 C# 编写的模块;一类是使用 PowerShell 命令编写的脚本。

alias

常见的 shell 都支持使用 alias 对命令或命令集合取别名,方便使用。

在 PowerShell 中可以通过 Get-Alias <command> 获取某个命令的别名。

powershell 复制代码
PS C:\Users\aa> Get-Alias ls

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

常用命令对比

powershell bashshell powershell alias
Start-Process <command> start <app path>
Get-ChildItem ls ls、dir
Get-History history history、h
Get-Process ps ps
New-Item touch ni
Remove-Item rm rm、del
Copy-Item cp cp、copy
Get-Location pwd pwd
Get-Help man help
Write-Output(输出内容到管道) echo echo、write
Write-Host(输出内容到控制台) - -
Select-String grep -
runas su -

runas 命令用于切换用户,例如系统中有一个账户 zhangsan,想以这个账户身份打开一个 shell,那么可以这样做 runas /user:zhangsan "powershell",这样会用 zhangsan 这个账户打开一个 powershell。

相关推荐
不要数手指啦1 小时前
Apifox使用方法
windows
上天_去_做颗惺星 EVE_BLUE2 小时前
Docker入门教程:常用命令与基础概念
linux·运维·macos·docker·容器·bash
IT专业服务商11 小时前
联想 SR550 服务器,配置 RAID 5教程!
运维·服务器·windows·microsoft·硬件架构
海尔辛11 小时前
学习黑客5 分钟小白弄懂Windows Desktop GUI
windows·学习
gushansanren11 小时前
基于WSL用MSVC编译ffmpeg7.1
windows·ffmpeg
伐尘12 小时前
【Qt】编译 Qt 5.15.x For Windows 基础教程 Visual Studio 2019 MSVC142 x64
windows·qt·visual studio
Johny_Zhao12 小时前
K8S+nginx+MYSQL+TOMCAT高可用架构企业自建网站
linux·网络·mysql·nginx·网络安全·信息安全·tomcat·云计算·shell·yum源·系统运维·itsm
专注代码七年13 小时前
在Windows 境下,将Redis和Nginx注册为服务。
windows·redis·nginx
simple_whu18 小时前
开启WSL的镜像网络模式
windows·wsl
Spider Cat 蜘蛛猫1 天前
【一】浏览器的copy as fetch和copy as bash的区别
javascript·ajax·bash·逆向·fetch