该代码旨在成为test.tx文件的简单符号链接创建者,但是当我运行它时,我得到三个输出:
mklink "H:\Backups\Batch Files\Batch" "H:\Backups\Batch Files\File System\test.txt"
mklink "H:\Backups\Batch Files\File" "H:\Backups\Batch Files\File System\test.txt"
mklink "H:\Backups\Batch Files\test.txt" "H:\Backups\Batch Files\File System\test.txt"
脚本:
@Echo off
set "src=H:\Backups\Batch Files\File System\test.txt"
set "des=H:\Backups\Batch Files"
FOR %%A IN (%src%) DO (echo mklink "%des%\%%~nxA" "%src%")
timeout 30
答案 0 :(得分:2)
分配给src
的值为H:\Backups\Batch Files\File System\test.txt
。
这是三个独立的以空格分隔的字符串,因此for
将do
echo
三次,每个字符串一次。
如果您希望cmd
将字符串解释为单个实体,则可以
1 /在分配时引用字符串,set "src="H:\Backups\Batch Files\File System\test.txt""
或
2 /使用FOR %%A IN ("%src%") DO (...