【发布时间】:2014-11-10 11:45:00
【问题描述】:
对于任何与 Windows 相关的事情,我都是个菜鸟,所以我希望这对某人来说是一个简单的问题。如果有区别,我正在使用 Win7。
我在 .cmd 文件中有以下代码,我从命令行连续运行两次,产生以下输出:
set /p input_tmp=input something: || set input_tmp=default
echo "input_tmp outside if: %input_tmp%"
if "%input_tmp%"=="default" (
echo "input_tmp inside if: %input_tmp%"
)
-------------output 1---------------
input something: cat
"input_tmp outside if: cat"
-------------output 2---------------
input something: dog
"input_tmp outside if: dog"
但是,当我运行以下代码时...
if not "%~1"=="something" (
set /p input_tmp=input something: || set input_tmp=default
echo "input_tmp outside if: %input_tmp%"
if "%input_tmp%"=="default" (
echo "input_tmp inside if: %input_tmp%"
)
)
-------------output 1---------------
input something: cat
-------------output 2---------------
input something: dog
"input_tmp outside if: cat"
作为 Linux 的 Java 程序员……这让我很困惑。
【问题讨论】:
标签: windows batch-file