对于 Unix cp
,您可以使用 --link
选项。当与文件夹一起使用时,它将
hard link涉及的文件而不是
复制,示例
cp --recursive --link foo bar
这在某些情况下可能是理想的,因为它比常规的要快 复制。使用 PowerShell 可以完成类似的事情吗?
最佳答案
PowerShell 目前不支持符号/硬链接(hard link)。 PowerShell 5.0 在这方面进行了改进。最新预览版(2014 年 9 月)包含其中一些功能。您可能想仔细阅读 release notes (docx) :
To support symbolic links, *-Item and a few related cmdlets have been extended. Now you can create symbolic links in a single, simple line with New-Item.
一个例子:
New-Item -ItemType HardLink -Path C:\Temp -Name MyHardLinkFile.txt -Value $pshome\profile.ps1
没有 Copy-Item
的示例,但我认为将其与递归 Get-ChildItem
一起使用并将结果通过管道传输到 New-Item
,但你必须自己尝试一下。
与此同时,PowerShell Community Extensions项目有一个 New-Hardlink
cmdlet。从表面上看,您必须按照我上面所述进行操作,并将 Get-ChildItem 的结果通过管道传输到此 cmdlet 中,以便为每个文件创建硬链接(hard link)。
关于powershell - 递归硬链接(hard link),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26470537/