VB SHELL 调用批处理命令如何引用当前目录?

Shell("cmd/von/c@echooff&setlocalenabledelayedexpansion&echo123>%~dp0/15/58.txt&exit"... Shell("cmd /von /c @echo off &setlocal enabledelayedexpansion &echo 123>%~dp0/15/58.txt&exit", vbHide)
上面是我写的,当然这个是有问题的,我的本意是想在VB中用SHELL执行这串命令,然后在当目录的子目录下新建一个文本文件,并写入123字符.%~dp0代表当前目录,但在这里无效,请高手解决如果引用当前目录,,谢谢!
如果在当前目录就直接写echo 123>58.txt就可以了,但不知如何在当前目录的子目录下写入这个文本
展开
 我来答
nefu_20061617
2013-10-14 · TA获得超过2342个赞
知道大有可为答主
回答量:1064
采纳率:72%
帮助的人:1488万
展开全部
%~dp0 在bat文件中表示bat文件所在目录,不一定是当前目录,直接在cmd窗口无效。
当前目录用 %cd% 或 . 表示,也可以省略。
setlocal enabledelayedexpansion 也是bat文件写法,直接在cmd窗口无效。
语句不涉及延迟变量,不需要用 /v 开启( /von 可以简写为 /v )。
/c 可以自动退出,不需要再加 exit
函数不返回值,一般不加括号。
Shell "cmd /c md 15&echo 123>15\58.txt", vbHide
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式