#PowerShell 的命令行基础
#启动 PowerShell
PowerShell 7.x 的可执行文件为 pwsh,在 Windows、Linux 和 macOS 上都可以直接启动:
$ pwsh
PowerShell 7.6.4
PS C:\Users\planc>
- Windows 上的提示符通常形如
PS C:\Users\planc>。 - Linux 和 macOS 上的提示符通常形如
PS /home/planc>。 - 提示符中的路径是 当前工作目录。
退出 PowerShell 可以输入 exit,或按 Ctrl + D。
#命令的基本格式
PowerShell 的命令遵循 动-宾 命名格式,基本形式为:
动词-名词 -参数 值
例如:
> Get-ChildItem -Path C:\Windows -Directory
Get-ChildItem是命令名。-Path是参数名,C:\Windows是参数值。-Directory是开关参数,不需要值。
参数名通常可以简写,只要不产生歧义即可。例如 -Recurse 可以简写为 -Rec:
> Get-ChildItem -Rec
在脚本中建议使用完整的参数名,以保证可读性。
#位置参数
有些参数可以省略参数名,直接按位置传入:
> Get-ChildItem C:\Windows
等价于:
> Get-ChildItem -Path C:\Windows
具体哪些参数支持位置传参,可以在帮助中查看参数的 Position 属性:
> Get-Help Get-ChildItem -Parameter Path
#运行外部程序
PowerShell 也可以直接运行系统中的可执行文件:
> git --version
> python --version
当路径中包含空格时,需要使用调用运算符 & 并用引号包裹:
> & "C:\Program Files\Git\bin\git.exe" --version
在 Linux 和 macOS 上,如果脚本具有可执行权限,也可以直接运行:
> ./demo.sh
#Tab 补全
按 Tab 键可以补全命令名、参数名、路径和参数值。连续按 Tab 可以在多个候选中切换。
Ctrl + Space- 显示补全菜单Tab- 循环选择补全项Shift + Tab- 反向循环选择补全项
#命令历史
使用方向键 ↑、↓ 可以浏览历史命令。PSReadLine 还提供以下快捷键:
Ctrl + R- 反向搜索历史命令Ctrl + L- 清屏Ctrl + C- 取消当前输入或终止正在运行的命令Ctrl + A- 光标移到行首Ctrl + E- 光标移到行尾Ctrl + U- 删除光标之前的内容Ctrl + K- 删除光标之后的内容
也可以通过命令查看和操作历史记录:
> Get-History
> Invoke-History 3 # 重新执行第 3 条历史命令
> Clear-History
#获取帮助
遇到不熟悉的命令时,可以使用 Get-Help 查看帮助:
> Get-Help Get-ChildItem
> Get-Help Get-ChildItem -Examples
> Get-Help Get-ChildItem -Online
help和man是Get-Help的包装,会分页显示。命令 -?等价于Get-Help 命令,但仅适用于 cmdlet。
详见 Get-Help 帮助手册。