Skip to content

Mq-b/PowerShellLearning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PowerShellLearning

PowerShell

  欢迎来到 PowerShellLearning 仓库!

  这个仓库记录了我在学习和教学 PowerShell 脚本过程中的笔记、示例代码和实用脚本。

什么是 PowerShell?

PowerShell 是一个由微软开发的任务自动化和配置管理工具。它既是一个命令行 Shell,也是一种脚本语言

  • 命令行 Shell:类似于 Windows 的 cmd(命令提示符),但功能更强大更现代。

  • 脚本语言:可以编写脚本来自动执行复杂任务,支持面向对象编程。

更多详细内容可参见微软 PowerShell 文档

另外 PowerShell 还定义了许多命令别名,使得我们命令行中的许多操作类似于 Unix/Linux shell。这让用户更容易上手,特别是那些习惯于 Unix/Linux 的用户。你可以通过命令 Get-Alias 查看对应关系。

常见别名示例

别名 对应 PowerShell 命令 说明
ls Get-ChildItem 列出目录中的文件和文件夹
dir Get-ChildItem 列出目录中的文件和文件夹
cp Copy-Item 复制文件或文件夹
mv Move-Item 移动文件或文件夹
rm Remove-Item 删除文件或文件夹
cat Get-Content 显示文件内容
type Get-Content 显示文件内容
gc Get-Content 显示文件内容
echo Write-Output 输出文本
cls Clear-Host 清除控制台屏幕
pwd Get-Location 显示当前目录
cd Set-Location 更改当前目录
sl Set-Location 更改当前目录
mkdir New-Item 创建新目录
rmdir Remove-Item 删除目录
del Remove-Item 删除文件或文件夹

使用 Get-Help 获取 PowerShell 文档

在编写脚本时,我们经常需要查阅有关 PowerShell 命令和概念的详细信息。PowerShell 提供了强大的 Get-Help 命令,用于查询本地或在线文档。

基本用法

Get-Help 的基本语法如下:

Get-Help [[-Name] <String>]

例如,如果想了解 Test-Path 命令的作用和用法,可以使用以下命令:

Get-Help Test-Path

获取在线文档

通过添加 -Online 参数,Get-Help 可以直接打开命令的微软在线文档:

Get-Help Test-Path -Online

环境

您无需拥有与我相同的环境,只需支持 PowerShell 即可(当然最好是开启了全局 utf-8)。以下是我的环境配置:

  • 操作系统
(Get-WmiObject -Class Win32_OperatingSystem).Caption 
# 结果: Microsoft Windows 11 家庭中文版
  • 区域设置
Get-WinSystemLocale
# 结果:
# LCID             Name             DisplayName
# ----             ----             -----------
# 2052             zh-CN             Chinese (Simplified, PRC)
  • 字符集设置
[System.Text.Encoding]::Default
# 结果:
# BodyName          : utf-8
# EncodingName      : Unicode (UTF-8)
# HeaderName        : utf-8
# WebName           : utf-8
# WindowsCodePage   : 1200
# IsBrowserDisplay  : True
# IsBrowserSave     : True
# IsMailNewsDisplay : True
# IsMailNewsSave    : True
# IsSingleByte      : False
# EncoderFallback   : System.Text.EncoderReplacementFallback
# DecoderFallback   : System.Text.DecoderReplacementFallback
# IsReadOnly        : True
# CodePage          : 65001
  • PowerShell 版本
$PSVersionTable.PSVersion
# 结果:
# Major  Minor  Build  Revision
# -----  -----  -----  --------
# 5      1      22621  4249

获取

git clone https://github.com/Mq-b/PowerShellLearning.git

仓库目录结构

  • src 文件夹中存放着我们的 .ps1 脚本文件。

  • OutPut 文件夹中通常是脚本进行文件写入操作存放输出文件的路径。

  • File 文件夹通常是存放脚本进行读取的文件。

  • md 文件夹存放着有关 PowerShell 内容的一些有意义的文档。

贡献

欢迎你为这个仓库贡献内容!你可以提交Pull Request,分享你的学习笔记、脚本示例或改进建议。 具体步骤:

  1. Fork 这个仓库。
  2. 在你的分支上进行修改。
  3. 提交 Pull Request,我们会尽快 review。

许可证

本仓库采用 署名-非商业性使用 4.0 国际 (CC BY-NC 4.0) 许可协议进行许可。

About

PowerShell 脚本编写教程与示例

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published