%\ n%是什么意思 - 批处理文件

时间:2014-07-15 15:46:59

标签: batch-file

我正在尝试理解一个脚本,但我不知道%\ n%是如何使用的,我不明白为什么它可以站在一个字符串后面 - >

set getKey=%\n%
for %%# in (1 2) do if %%#==2 (%\n%
  set key=%\n%
  set inKey=%\n%
  set keyTest=%\n%
  ^<^&9 set /p "inKey="%\n%
  if defined inKey (%\n%
    set inKey=!inKey:~0,-1!%\n%
    for %%C in (!args!) do set /a keyTest=1^&if /i !inKey! equ %%~C set key=!inKey!%\n%
  )%\n%
  if not defined keyTest set key=!inKey!%\n%
set draw=%\n%
cls%\n%
for /l %%Y in (0,1,%height%) do echo(!line%%Y!%\n%
echo Speed = !Difficulty! !replay!%\n%
echo Time  = !m!:!s!%\n%`

...(它更进一步)

什么是cls%\n% ??

如果有人理解我,请帮帮我

日Thnx

整个脚本 - &gt;

http://www.dostips.com/forum/viewtopic.php?f=3&t=4741

2 个答案:

答案 0 :(得分:1)

%\n%是环境变量\n的扩展。所以你需要查看定义的位置。

当你找到它时会有一条评论解释它:

:: define a newline with line continuation
set ^"\n=^^^%LF%%LF%^%LF%%LF%^^"

什么是LF

:: define LF as a Line Feed (newline) character
set ^"LF=^

^" Above empty line is required - do not remove

因此LF被设置为换行符。所有这些gubbins只是一种冗长的做事方式,这在CMD批处理文件中并不容易。

答案 1 :(得分:0)

%\n%是一个普通的环境变量。

运行它以查看它是否有效:

@echo off
set \n=a
set getKey=%\n%
echo "%getkey%"
pause