将当前路径存储在变量中并重用它

时间:2016-01-14 11:28:50

标签: variables batch-file cd

我知道已经提出了类似的问题,但不知怎的,我无法弄清楚我的代码中的错误。 我正在使用以下代码制作.bat文件

echo off 
echo %cd%
set curr_directory = "%cd%"
echo $curr_directory
pause

OUTPUT是:

C:\Users\MyDesktop>echo off
C:\Users\MyDesktop>
$curr_directory
Press any key to continue . . .

所以我没有得到的是为什么没有打印变量curr_directory的值。 我最终想要做的是使用变量更改目录:cd $curr_directory

由于

2 个答案:

答案 0 :(得分:3)

我不知道从哪里开始。关于你的代码的一切都是错误的。这应该有效:

@echo off 
echo %cd%
set curr_directory=%cd%
echo %curr_directory%
pause

批处理时,您可以通过%var%访问变量,而不是$var。此外,请勿在{{1​​}}后面放置空格。 =会将123存储在x中,但SET x=123会将_123(_表示空格)存储在x中。

编辑:正如SomethingDark所述,第一行应该是SET x= 123,除非你真的想要打印消息@echo off。是的,echo off表示SET x = 123%x %

答案 1 :(得分:-1)

使用%curr_directory%而不是$ curr_directory

避免像下面那样的空格

“set curr_directory =%cd%”

下面的

应该有效

echo off 
echo %cd%
set curr_directory=%cd%
echo curr_directory is %curr_directory%
pause