PowerShell New-Item
最后修改:2025 年 2 月 15 日
在本文中,我们将介绍 PowerShell 中的 New-Item
cmdlet。此 cmdlet 用于在文件系统中创建文件、目录和其他项。
New-Item 基础知识
New-Item
cmdlet 用于在文件系统中创建新项。它可以创建文件、目录、符号链接和连接点。该 cmdlet 通过参数来控制项的创建,功能多样。它是 PowerShell 脚本中文件系统自动化的重要工具。
创建新目录
New-Item
最简单的用法是创建新目录。使用 -ItemType 参数并将其值设置为 "Directory" 来指定。-Path 参数定义了创建目录的位置。可以在单个命令中创建多个目录。
New-Item -Path "C:\temp\NewFolder" -ItemType Directory
此命令在 C:\temp 中创建名为 "NewFolder" 的新目录。如果父目录不存在,命令将失败。-Force 参数可以自动创建父目录。
创建新文件
要创建新文件,请使用 New-Item
并将 -ItemType 设置为 "File"。-Value 参数可以初始化文件内容。如果文件已存在,除非省略 -Force,否则会被覆盖。如果未指定 -Value,则会创建空文件。
New-Item -Path "C:\temp\example.txt" -ItemType File -Value "Initial content"
这会在 C:\temp 中创建 example.txt 文件,并以 "Initial content" 作为文本内容。在 PowerShell 中,文件编码默认为 UTF-8。要指定其他编码,请在创建后使用 Out-File。
创建多个项
New-Item
可以使用数组一次创建多个项。在 -Path 参数中以数组的形式提供多个路径。这适用于文件和目录。每个项将以相同的属性创建。
New-Item -Path "C:\temp\dir1","C:\temp\dir2" -ItemType Directory
这会在 C:\temp 中创建两个目录:dir1 和 dir2。此技术也适用于创建多个文件。在 -Path 参数中不支持通配符。
使用相对路径创建项
New-Item
可根据当前位置使用相对路径。当前位置可以通过 Get-Location cmdlet 显示。相对路径可以简化在不同目录中工作的脚本。可以在路径中使用点表示法(.、..)。
New-Item -Path ".\relative.txt" -ItemType File
这会在当前工作目录中创建 relative.txt。文件路径是相对于脚本执行位置的。使用 Push-Location 和 Pop-Location 来管理工作目录。
创建符号链接
New-Item
可以使用 -ItemType "SymbolicLink" 创建符号链接。符号链接指向文件系统中的其他文件或目录。-Target 参数指定链接指向的目标。在 Windows 上需要管理员权限。
New-Item -ItemType SymbolicLink -Path "C:\temp\mylink" -Target "C:\target"
这会创建一个名为 mylink 的符号链接,指向 C:\target。对于文件,请使用 -ItemType "File" 并将 -Value 指向目标。符号链接在脚本中创建快捷方式非常有用。
创建项时进行确认
-Confirm 参数会在创建前添加交互式确认。这可以防止意外覆盖现有项。确认提示会显示将要创建的内容。在需要安全性的脚本中非常有用。
New-Item -Path "C:\temp\important.txt" -ItemType File -Confirm
这会在创建 important.txt 之前显示确认提示。回答 'Y' 继续,或回答 'N' 取消操作。-WhatIf 参数可以显示将要发生什么,而不实际进行更改。
创建隐藏文件
可以使用 -Force 参数创建带有隐藏属性的文件。隐藏文件在常规目录列表中不可见。属性以后可以使用 attrib.exe 或 Set-ItemProperty 进行修改。隐藏文件通常用于配置文件。
New-Item -Path "C:\temp\hidden.txt" -ItemType File -Force -Value "hidden" | Set-ItemProperty -Name Attributes -Value "Hidden"
这会创建 hidden.txt 并立即将其设置为隐藏。管道将新文件对象传递给 Set-ItemProperty。隐藏文件可以通过 Get-ChildItem -Force 查看。
来源
在本文中,我们已经介绍了 PowerShell 中的 New-Item cmdlet。
作者
列出 所有 PowerShell 教程。