如何从变量中写入文件中的空行?

时间:2015-07-10 13:57:09

标签: windows command-line

在Windows命令行中,我通常使用

在文件中写入空行
echo; >> file

但是,我现在拥有的是一个变量

$param1%

如果我想让echo将其写入我必须要做的文件中

echo %param1% >> file

这里是问题的开始:

如果我想像我做的那样空虚

set param1=;

但是,由于;未与回音字接触,因此命令为

echo ; >> file

在文件中写; ...

我需要变量有时包含文本,有时候什么都没有。我该怎么办?

2 个答案:

答案 0 :(得分:1)

if "%param1%"=="" echo;>>file else echo %param1%>>file

答案 1 :(得分:1)

如果param1变量不存在(与set "param1="相同),那么%param1%会导致:

  • .bat脚本中%param1%会产生一个空字符串(长度为零的字符串);
  • 在CLI窗口中%param1%结果为%param1%字符串。

使用.bat脚本(注意%param1%周围没有空格)

>> file (echo;%param1%)

在CLI窗口中使用

>>file (if not defined param1 (echo;) else echo;%param1%)

请注意if - else中正确使用括号!例如,检查下一个命令的有趣结果:

if  ""=="" echo;"THEN branch">>file else echo;"ELSE branch">>file

输出:

==>if  ""=="" echo;"THEN branch">>file else echo;"ELSE branch">>file

==>type file
"THEN branch" else echo;"ELSE branch"