如何为没有任何类型的文件设置文件类型
How to set file type for files without any type
在一个目录中,有一些文件没有文件类型。所以他们没有 .xxx
,我知道他们的类型,我想设置它。
如何获取他们的列表并添加他们的类型,例如 .srt
?
我可以使用以下命令获取具有文件类型的所有文件的列表:
Ls * | ? {$_.name -match '\.\w{3}$' } | FT
但是,以下命令仍然没有给出预期的结果:
Ls * | ? {$_.name -match '[^\.\w{3}]$' } | FT
此外,我需要一些帮助来重命名它们并添加它们的类型。
如果您想将文件夹中所有文件的扩展名设置为 .srt
,您可以像这样从管道中使用 Rename-Item
请注意,这会改变 ALL 的扩展名]您选择的目录中没有扩展名的文件.srt
Get-ChildItem -Path C:\Path\To\Files | Where-Object -FilterScript {-not $_.Extension} | ForEach-Object { Rename-Item -Path $_.FullName -NewName ($_.FullName + ".srt") }
下面这条管道的解释
获取所有文件
Get-ChildItem -Path C:\Path\To\Files
文件没有扩展名
Where-Object -FilterScript {-not $_.Extension}
对于目录中的每个文件
ForEach-Object { }
将 Item 重命名为之前的名称 ($_.FullName) + 我们选择的扩展名 (.srt)
Rename-Item -Path $_.FullName -NewName ($_.FullName + ".srt")
在一个目录中,有一些文件没有文件类型。所以他们没有 .xxx
,我知道他们的类型,我想设置它。
如何获取他们的列表并添加他们的类型,例如 .srt
?
我可以使用以下命令获取具有文件类型的所有文件的列表:
Ls * | ? {$_.name -match '\.\w{3}$' } | FT
但是,以下命令仍然没有给出预期的结果:
Ls * | ? {$_.name -match '[^\.\w{3}]$' } | FT
此外,我需要一些帮助来重命名它们并添加它们的类型。
如果您想将文件夹中所有文件的扩展名设置为 .srt
,您可以像这样从管道中使用 Rename-Item
请注意,这会改变 ALL 的扩展名]您选择的目录中没有扩展名的文件.srt
Get-ChildItem -Path C:\Path\To\Files | Where-Object -FilterScript {-not $_.Extension} | ForEach-Object { Rename-Item -Path $_.FullName -NewName ($_.FullName + ".srt") }
下面这条管道的解释
获取所有文件
Get-ChildItem -Path C:\Path\To\Files
文件没有扩展名
Where-Object -FilterScript {-not $_.Extension}
对于目录中的每个文件
ForEach-Object { }
将 Item 重命名为之前的名称 ($_.FullName) + 我们选择的扩展名 (.srt)
Rename-Item -Path $_.FullName -NewName ($_.FullName + ".srt")