Kev*_*nko 19 windows command-line
在 Unix 系统上,此命令将两个文件复制到名为 的文件夹中folder
:
cp foo bar folder
Run Code Online (Sandbox Code Playgroud)
在 Windows 上,这不是有效的命令:
copy foo bar folder
The syntax of the command is incorrect.
Run Code Online (Sandbox Code Playgroud)
我可以在 Windows 上使用其内置工具在一个命令中执行此操作吗?
ste*_*ert 11
for %I in (file1.txt file2.txt file3.txt) do copy %I c:\somedir\
Run Code Online (Sandbox Code Playgroud)
您可以在批处理文件中或直接从命令行使用它。不像 *nix 那样干净,但它有效。
Windows 包括内置的robocopy,它可以从单个命令复制多个文件:
robocopy a\source\folder a\dest\folder file1.docx file2.exe
Run Code Online (Sandbox Code Playgroud)
值得注意的是,如果您有一个通配符表达式而不是一个明确的文件列表,那么 COPY 会将所有文件复制到目标目录:
COPY srcdir\* destdir\
COPY *sy?.* anotherdestdir\
Run Code Online (Sandbox Code Playgroud)
任何来自 *nix 背景的人都会发现特别令人困惑的是,虽然显式列表有效,而显式列表却没有,因为在类 Unix 的 shell 中,它们与程序无法区分——shell 扩展了任何通配符,因此程序最终以一个显式的文件列表。这在此处不适用,因为 Windows 命令外壳将通配符直接传递给程序,并且由它们来进行扩展。(另外 COPY 是 shell 中的内置命令,而不是像 Linux 上的 cp 这样的外部程序,因此原则上它可能会违反有关命令行参数的通常规则,但这实际上并不适用于此。)
归档时间: |
|
查看次数: |
41857 次 |
最近记录: |