我想知道如何使用PowerShell将特定文件组合在一起。示例:我想采用EDIDISC.UPD
EDIACCA.UPD
EDIBRUM.UPD
ETC ETC ETC ETC并将这些文件的内容组合在一起,并创建一个名为A075MMDDYY.UPD
的新文件。现在我希望它能够被网络驱动器上有.UPD
个文件的任何人运行。例如:我将在N:\USERS\Kevin
,其他人可能在N:\USERS\JohnDoe
。
到目前为止我只有:
Param (
$path = (Get-Location).Path,
$filetype = "*.UPD",
$files = (Get-ChildItem -Filter $filetype),
$Newfile = $path + "\Newfile.UPD"
)
$files | foreach { Get-Content $_ | Out-File -Append $Newfile -Encoding ascii }
答案 0 :(得分:0)
只关注连接(cat
ting)多个文件内容以形成新文件的方面,假设当前目录(.
):
$dir = '.'
$newfile ="$dir/Newfile.UPD"
Get-Content "$dir/*.UPD" -Exclude (Split-Path -Leaf $newFile) |
Out-File -Append -Encoding Ascii $newFile
您可以将通配符表达式直接传递给Get-Content
的(隐含的)-Path
参数,以便检索所有匹配文件的内容。
由于输出文件位于同一个目录中。并匹配通配符表达式,但是,它必须排除匹配, filename ,因此-Exclude (Split-Path -Leaf $newFile)
参数(这另外假设没有输入文件)其名称与输出文件的名称相同。