BAT文件cammand不起作用

时间:2018-01-21 01:21:11

标签: batch-file

我可以打开cmd窗口,我可以执行以下命令,它会要求我输入密码。

net use w: /delete
For /f "tokens=1,2 delims= " %A in ('arp -a ^| findstr -i 00-d0-b8-20-f7-67') do net use w: \\%A\Pictures /USER:EKFAKE

我想把它放在bat文件中,我想保持cmd窗口打开。尝试了各种各样的方法但未能实现这一目标。

请帮忙。感谢。

修改

我尝试了以下方式但未使用uid和密码且未连接到驱动器。

SET /P _inputname= Please enter an username: 

SET /P _inputpass= Please enter an password: 

For /f "tokens=1,2 delims= " %%A in ('arp -a ^| findstr -i 00-d0-b8-20-f7-67') do net use w: \%%A\Pictures \user:%_inputname% %_inputpass%

2 个答案:

答案 0 :(得分:2)

net use w: /delete
For /f "tokens=1,2 delims= " %%A in ('arp -a ^| findstr -i 00-d0-b8-20-f7-67') do net use w: \%%A\Pictures /USER:EKFAKE
pause

请注意%%用于元变量A。批处理文件中需要%%%直接来自提示符。

您的代码在批处理文件中会生成语法错误。这将被报告给屏幕。如果您单击该文件以运行它,则会显示错误,然后该过程将关闭。如果从提示符运行批处理,您将看到语法错误消息。

pause指令会使窗口保持打开状态 - 但如果cmd发现语法错误,则 - 您需要从提示符处运行才能看到这些内容。

答案 1 :(得分:0)

以下是基于您的修改的工作解决方案。请不要将此答案标记为正确,因为@Magoo已经为您提供了正确的解决方案。

@echo off
SET /P _inputname=Please enter your username:
SET /P _inputpass=Please enter your password:
For /f "tokens=1,2 delims= " %%A in ('arp -a ^| findstr -i 00-d0-b8-20-f7-67') do (net use w: \\%%A\Pictures /user:%_inputname% %_inputpass%)