这是我的文件夹结构:
destination.lnk
file.1
file.2
file.3
file.4
如何使用命令行将这些文件移动到“目标”,而不必输入整个路径?
move file.* destination.lnk
Cannot move multiple files to a single file
答案1
您收到错误是因为您尝试将两个文件移动到单个链接文件中,但无法做到这一点。
相反,我建议您将目标路径保存到变量并将文件移动到其转换值:
SET location=C:\your_folder
move file.* %location%
編輯:
据我了解,您希望将目标文件夹的位置存储在单独的文件中。因此,您可以简单地用包含目标路径的文本文件替换现有的快捷方式:
set /p location=<destination.txt
move file.* %location%
答案2
您可以创建一个符号链接
mklink Destination "C:\Users\All Users\Dokumente"
进而
move file.* Destination\
尾随的反斜杠很重要,因为符号链接本身不能作为目标。
符号链接将显示在类似 sys 的目录中:
> dir des*
Volume in drive C is System-Xxxxx
Volume Serial Number is xxxx-xxxx
Directory of c:\Test
06/26/2017 18:33 <SYMLINK> Destination [c:\Users\All Users\Dokumente]
1 File(s) 0 bytes
0 Dir(s) 89.795.506.176 bytes free
答案3
如果您愿意使用 PowerShell,这里有一个脚本可以执行您想要的操作,同时将其封装在变量中:
$Shell = New-Object -ComObject WScript.Shell
$Shortcut = '.\shortcut.lnk'
$TargetPath = $Shell.CreateShortcut($Shortcut).targetpath
然后在 PowerShell 中使用该变量来实现您想要的效果。