以前我使用cmd将文件(abc.txt)从C:\vackwrk\24may\abc.txt
复制到G:\work\
,我在cmd中使用的命令是copy C:\vackwrk\*\abc.txt G:\work\
它不起作用但是当我使用PowerShell时它工作(文件复制到另一个文件夹)PS C:\Windows\system32> copy C:\vackwrk\*\abc.txt G:\work\
(Wildcard (*) in the path don't work while copying from cmd)
所以,问题是 - 为什么cmd不允许使用通配符但PowerShell允许? PowerShell比cmd更好吗?
答案 0 :(得分:1)
这取决于您想要使用它的内容。但事实上,PowerShell更强大,更强大。比CMD。
答案 1 :(得分:1)
get-childItem -path / path / -recursive -inculde" abc.txt " - 排除" /你不需要的任何东西" |的foreach { copy-item -path / path / -destination" / destination / &#34 ;; }
祝你好运!答案 2 :(得分:1)
在命令提示符下复制并在PowerShell中复制完全不同。
copy是由cmd.exe本身实现的internal command。它不是可以单独运行的可执行文件。如果您运行copy /?
,则可以看到帮助。
在PowerShell中复制Copy-Item
cmdlet的别名。您可以使用help copy
。
两者表面上相似,但实际上有一些不同的功能。正如您所见,PowerShell将扩展路径中的任何通配符,而不仅仅是文件名中的通配符。另一个区别是cmd中的复制允许您使用+连接文件,因此copy file1.txt+file2.txt+fil3.txt out.txt
连接文件并将输出放在out.txt中。 Copy-Item
中没有类似的功能。 PowerShell的Copy-Item cmdlet与复制的xcopy更相似。