New-Item

创建新项。

语法

pathSet (默认值)

New-Item
    [-Path] <String[]>
    [-ItemType <String>]
    [-Value <Object>]
    [-Force]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [<CommonParameters>]

nameSet

New-Item
    [[-Path] <String[]>]
    -Name <String>
    [-ItemType <String>]
    [-Value <Object>]
    [-Force]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [<CommonParameters>]

说明

New-Item cmdlet 将创建新项并设置其值。 可以创建的项的类型取决于项的位置。 例如,在文件系统中,New-Item 创建文件和文件夹。 在注册表中,New-Item 创建注册表项和条目。

New-Item 还可以设置其创建的项的值。 例如,创建新文件时,New-Item 可以将初始内容添加到该文件。

示例

示例 1:在当前目录中创建文件

此命令在当前目录中创建名为“testfile1.txt”的文本文件。 Path 参数的值中的点 ('.') 指示当前目录。 Value 参数后面的带引号的文本作为内容添加到文件中。

New-Item -Path . -Name "testfile1.txt" -ItemType "file" -Value "This is a text string."

示例 2:创建目录

此命令在 C: 驱动器中创建名为“Logfiles”的目录。 ItemType 参数指定新项是目录,而不是文件或其他文件系统对象。

New-Item -Path "c:\" -Name "logfiles" -ItemType "directory"

示例 3:创建配置文件

此命令在 $profile 变量指定的路径中创建 PowerShell 配置文件。

可以使用配置文件自定义 PowerShell。 $profile 是一个自动(内置)变量,用于存储“CurrentUser/CurrentHost”配置文件的路径和文件名。 默认情况下,即使 PowerShell 存储路径和文件名,配置文件也不存在。

在此命令中,$profile 变量表示文件的路径。 ItemType 参数指定命令创建文件。 Force 参数允许在配置文件路径中创建文件,即使路径中的目录不存在也是如此。

创建配置文件后,可以在配置文件中输入别名、函数和脚本来自定义 shell。

有关详细信息,请参阅 about_Automatic_Variablesabout_Profiles

New-Item -Path $profile -ItemType "file" -Force

注释

使用此方法创建文件时,生成的文件将编码为 UTF-8,而无需字节顺序标记(BOM)。

示例 4:在不同的目录中创建目录

此示例在“C:\PS-Test”目录中创建新的脚本目录。

新目录项“Scripts”的名称包含在 Path 参数的值中,而不是在 Name的值中指定。 如语法所示,任一命令形式都有效。

New-Item -ItemType "directory" -Path "c:\ps-test\scripts"

示例 5:创建多个文件

此示例在两个不同的目录中创建文件。 由于 Path 需要多个字符串,因此可以使用它来创建多个项。

New-Item -ItemType "file" -Path "c:\ps-test\test.txt", "c:\ps-test\Logs\test.log"

参数

-Confirm

在运行 cmdlet 之前,提示你进行确认。

参数属性

类型:SwitchParameter
默认值:False
支持通配符:False
不显示:False
别名:cf

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Credential

注释

任何随 PowerShell 一起安装的提供程序都不支持此参数。 若要模拟其他用户或在运行此 cmdlet 时提升凭据,请使用 Invoke-Command

参数属性

类型:PSCredential
默认值:Current user
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-Force

强制此 cmdlet 创建写入现有只读项的项。 实现因服务提供商而异。 有关详细信息,请参阅 about_Providers。 即使使用 Force 参数,cmdlet 也无法替代安全限制。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ItemType

指定新项的提供程序指定类型。 此参数的可用值取决于所使用的当前提供程序。

如果位置位于 FileSystem 驱动器中,则允许以下值:

  • 文件
  • 目录
  • SymbolicLink
  • 交汇处
  • HardLink

使用此方法创建文件时,生成的文件将编码为 UTF-8,而无需字节顺序标记(BOM)。

Certificate 驱动器中,可以指定以下值:

  • 证书提供程序
  • 证书
  • Microsoft Store
  • 店铺位置

有关详细信息,请参阅 about_Providers

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False
别名:类型

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-Name

指定新项的名称。

可以在 名称Path 参数值中指定新项的名称,并且可以在 NamePath 值中指定新项的路径。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

nameSet
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-Path

指定新项的位置的路径。 允许使用通配符。

可以在 名称中指定新项的名称,或将其包含在 Path中。

参数属性

类型:

String[]

默认值:None
支持通配符:True
不显示:False

参数集

pathSet
Position:0
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False
nameSet
Position:0
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-UseTransaction

在活动事务中包含该命令。 此参数仅在事务正在进行时有效。 有关详细信息,请参阅 about_Transactions

参数属性

类型:SwitchParameter
默认值:False
支持通配符:False
不显示:False
别名:usetx

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Value

指定新项的值。 还可以通过管道将值传递给 New-Item

参数属性

类型:Object
默认值:None
支持通配符:False
不显示:False
别名:目标

参数集

(All)
Position:Named
必需:False
来自管道的值:True
来自管道的值(按属性名称):True
来自剩余参数的值:False

-WhatIf

显示 cmdlet 运行时会发生什么情况。 命令脚本未运行。

参数属性

类型:SwitchParameter
默认值:False
支持通配符:False
不显示:False
别名:无线

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters

输入

Object

可以将新项的值通过管道传递给此 cmdlet。

输出

Object

此 cmdlet 返回它创建的项。

备注

New-Item 被设计用于处理任何供应商公开的数据。 若要列出会话中可用的提供程序,请键入 Get-PsProvider。 有关详细信息,请参阅 about_Providers