如何在windows命令行参数中传递%cd%字符串
在命令行中%cd%是当前路径的变量,在批处理中和在命令行中都能够使用。 在批处理中: echo %cd% 会显示当前路径 echo %%cd%% 就能够显示%cd% 而当在命令行参数中: 提交的参数是 %cd% 时参数是当前路径 使用批处理类似的方法 参数是 %%cd%% 时并无法将参数变为 %cd% 而是 %路径% 在命令行中如何传递字符串才能使得到的参数为%cd%本身?
这么做有什么意义吗,你的程序自己来解释 %cd% ?非得这么做的话,% 前加上个 ^ 字符就可以了:@echo ^%cd^%
是为了避免linux和windows的字符集差异导致中文乱码,需要将字符串通过urlencode加密之后以参数的形式提交给程序,程序再进行解码 而“万”字加密之后是%cd%f2,这个位置就巧妙的出现了%cd% ^%cd^%试了一下,作为命令行参数直接提交会得到%cd%,但是如果他在引号里面得到的结果就会是"^%cd^%" 而"%cd%"得到的是"路径",如何能得到"%cd%"呢?
尝试了下,变成"^%cd^%"让他在引号外能够解决问题,thanks
|