Variables 将当前路径存储在变量中并重用它
我知道已经有人问过类似的问题,但不知何故,我无法找出代码中的错误。 我正在用下面的代码生成一个.bat文件Variables 将当前路径存储在变量中并重用它,variables,batch-file,cd,Variables,Batch File,Cd,我知道已经有人问过类似的问题,但不知何故,我无法找出代码中的错误。 我正在用下面的代码生成一个.bat文件 echo off echo %cd% set curr_directory = "%cd%" echo $curr_directory pause 输出为: C:\Users\MyDesktop>echo off C:\Users\MyDesktop> $curr_directory Press any key to continue . . . 所以我不明白为什么变量c
echo off
echo %cd%
set curr_directory = "%cd%"
echo $curr_directory
pause
输出为:
C:\Users\MyDesktop>echo off
C:\Users\MyDesktop>
$curr_directory
Press any key to continue . . .
所以我不明白为什么变量curr\u directory
的值没有被打印出来。
我最终想做的是使用变量更改目录,如下所示:cd$curr\u目录
谢谢我不知道从哪里开始。关于代码的一切都是错误的。这应该起作用:
@echo off
echo %cd%
set curr_directory=%cd%
echo %curr_directory%
pause
在批处理中,您可以通过%var%
而不是$var
访问变量。此外,不要在=
后面加空格SET x=123
将在x中存储123,但SET x=123
将在x中存储123(u表示空格)
编辑:如SomethingDark所述,第一行应该是
@echo off
,除非您确实希望打印消息echo off
。是的,SET x=123
意味着%x%
是123
我不知道从哪里开始。关于代码的一切都是错误的。这应该起作用:
@echo off
echo %cd%
set curr_directory=%cd%
echo %curr_directory%
pause
在批处理中,您可以通过%var%
而不是$var
访问变量。此外,不要在=
后面加空格SET x=123
将在x中存储123,但SET x=123
将在x中存储123(u表示空格)
编辑:如SomethingDark所述,第一行应该是
@echo off
,除非您确实希望打印消息echo off
。是的,SET x=123
表示%x%
是123
使用%curr\u目录%而不是$curr\u目录
避免像下面这样的间隔
“设置当前目录=%cd%”
下面应该有用
echo off
echo %cd%
set curr_directory=%cd%
echo curr_directory is %curr_directory%
pause
使用%curr\u目录%而不是$curr\u目录 避免像下面这样的间隔 “设置当前目录=%cd%” 下面应该有用
echo off
echo %cd%
set curr_directory=%cd%
echo curr_directory is %curr_directory%
pause
您可能对使用
%variable%
而不是$variable
调用批处理中的pushd
和popd
变量感兴趣。非常感谢大家。。它起作用了!!:顺便说一句,使用set“curr\u directory=%cd%”比使用set curr\u directory=“%cd%”更好。这样,你的变量就不会包含双引号,但它仍然适用于包含空格的路径。奇怪的是,你会对一个变量使用百分比符号,而对另一个变量则不使用百分比符号。在所有条件相同的情况下,最简单的解释往往是正确的。您可能对pushd
和popd
感兴趣。批处理中的变量是使用%variable%
而不是$variable
调用的。非常感谢大家。。它起作用了!!:顺便说一句,使用set“curr\u directory=%cd%”比使用set curr\u directory=“%cd%”更好。这样,你的变量就不会包含双引号,但它仍然适用于包含空格的路径。奇怪的是,你会对一个变量使用百分比符号,而对另一个变量则不使用百分比符号。在所有条件相同的情况下,最简单的解释往往是正确的。说到错误,你的第一行应该是@echo off
:)好的,你可能是对的,但是如果你真的想打印“echo off”,echo off不是一个错误:)将把_123(u.means space)存储在x
-不。它将存储在%x%
中,而不是%x%
…并且问题的标题也是错误的:by“当前路径”我们理解path
变量的当前值,而不是“当前目录”,也不是所有。说到错误,您的第一行应该是@echo off
:)好的,您可能是对的,但是如果您真的想打印“echo off”,echo off不是错误:)将存储123(u.表示空间)在x中
-否。它将存储在%x%
中,而不是%x%
…问题的标题也是错误的:通过“当前路径”,我们了解路径
变量的当前值,而不是“当前目录”“祝贺你,你知道如何复制和粘贴两小时前在这里的另一个答案。实际上,我不投你反对票的唯一原因是,我不会把反对票浪费在有1个代表的用户身上。祝贺你,你知道如何复制和粘贴两小时前在这里的另一个答案。实际上,我不投你反对票的唯一原因是因为我不会把反对票浪费在有1个代表的用户身上。