CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
PowerShell 入门/课时/文件与路径
RawBlame
课时目录12 节

PowerShell 入门

  1. 01PowerShell 是什么
  2. 02Cmdlet 基础
  3. 03管道与对象
  4. 04变量与类型
  5. 05脚本与函数
  6. 06文件与路径
  7. 07远程与会话
  8. 08PowerShell vs Bash
  9. 09Windows 部署 CodeRoadMap
  10. 10GitHub Actions Windows
  11. 11Windows 容器简介
  12. 12综合练习

文件与路径

Get-ChildItem、Copy-Item、路径引号。

30 分钟

文件与路径

Windows 路径含反斜杠 \,PowerShell 同时接受 /。Get-ChildItem、Copy-Item、Test-Path 是日常文件操作三件套——打包、同步课程、查日志都靠它们。

学习目标

  • 正确处理 Windows 路径与引号
  • 使用 Get-ChildItem、Copy-Item、Join-Path
  • 读写文本文件与递归搜索

核心内容

路径基础

Get-Location
Set-Location H:\work\java-nav
Join-Path $PSScriptRoot "..\..\content\课程"   # 拼接,自动处理分隔符
Resolve-Path deploy\scripts\sync-courses.ps1    # 转为绝对路径
Test-Path platform\bin\package-prod.bat         # 文件是否存在

路径含空格时必须引号:Set-Location "H:\work\my project"。

列出与搜索

Get-ChildItem content\课程 -Directory
Get-ChildItem content\课程\powershell-essentials\drafts -Filter *.md
Get-ChildItem . -Recurse -Filter *.ps1 |
  Select-Object FullName, Length

-Recurse 递归子目录;-Filter 比 -Include 更快。对应 Linux:find / ls -R(linux-files)。

复制与移动

Copy-Item deploy\env\prod\platform.env.example platform\.env.production.local
Move-Item logs\old.log logs\archive\
New-Item -ItemType Directory -Path logs\archive -Force
Remove-Item temp\* -Recurse -Force   # 谨慎,先 -WhatIf

package-prod.bat 第一步就是 copy deploy\env\prod\platform.env.example → .env.production.local。

读写文本

Get-Content platform\.env.production.local | Select-Object -First 5
"deploy at $(Get-Date)" | Add-Content logs\deploy.log
@(
  "line1",
  "line2"
) | Set-Content config\test.txt

Set-Content 覆盖;Add-Content 追加。UTF-8 文件:Get-Content -Encoding utf8。

练习

  • 递归列出 content\课程 下所有 outline.yaml
  • 用 Test-Path 确认 deploy\scripts\sync-courses.ps1 存在
  • 复制 到临时目录并读取前 3 行
platform.env.example

小结

Join-Path 拼接、Test-Path 探测、Get/Copy-Item 操作,是 Windows 文件自动化核心。 下一课远程与会话。

加载本节练习…
← 上一课脚本与函数下一课 →远程与会话