我正在使用powershell Add-Content
来创建文件。但是,当文件的文件夹不存在时,我收到错误:
Add-Content : Could not find a part of the path 'C:\tests\test134\logs\test134.log'.
根据文档,这应该创建文件夹:
PS C:\> Add-Content -Value (Get-Content "test.log") -Path "C:\tests\test134\logs\test134.log"
此命令创建一个新的 目录和文件,并将现有文件的内容复制到 新创建的文件。
此命令使用Add-Content cmdlet添加内容。价值 Value参数是一个获取内容的Get-Content命令 现有文件Test.log。
path参数的值是当时不存在的路径 命令运行。在此示例中,仅存在C:\ Tests目录。 该命令创建剩余的目录和Test134.log 文件。
似乎Add-Content中的一个明显问题,不是吗? 你可以重现这个吗?
编辑:我正在运行PowerShell版本5.1.16299.64
BR Matthias
答案 0 :(得分:3)
Add-Content
cmdlet无法创建路径,只能创建文件。它有效:
$Path = "C:\tests\test134\logs2\test134.log"
$Path |% {
If (Test-Path -Path $_) { Get-Item $_ }
Else { New-Item -Path $_ -Force }
} | Add-Content -Value 'sample content'
答案 1 :(得分:1)
另一种选择:
$Path = "C:\tests\test134\logs2\test134.log"
If (!(Test-Path $Path)) {New-Item -Path $Path -Force}
Add-Content -Path $Path -Value "Sample Content"