我可以打开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%
答案 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%)