写一个bat脚本,脚本要求:1、将网络路径\172.18.86.7\test映射盘符到电脑T://,账号为:Yangjiang,密码为:pz1d2oe7,如果电脑已经有盘符T,则自动使用其他字母做盘符号。2、新建盘符时,自动在网络路径上新建一个txt文件,文件内容:电脑名字、IP,时间。
时间: 2024-03-11 10:50:15 浏览: 95
好的,以下是符合您要求的bat脚本:
```bat
@echo off
setlocal
set "NETWORK_PATH=\\172.18.86.7\test"
set "USERNAME=Yangjiang"
set "PASSWORD=pz1d2oe7"
rem 获取当前时间
for /f "tokens=1-4 delims=/ " %%i in ("%date%") do (
set "YEAR=%%i"
set "MONTH=%%j"
set "DAY=%%k"
)
for /f "tokens=1-3 delims=: " %%i in ("%time%") do (
set "HOUR=%%i"
set "MINUTE=%%j"
set "SECOND=%%k"
)
set "NOW=%YEAR%-%MONTH%-%DAY% %HOUR%:%MINUTE%:%SECOND%"
rem 获取电脑名和IP地址
for /f "tokens=2 delims=: " %%i in ('ipconfig ^| findstr /i "IPv4"') do set "IP_ADDRESS=%%i"
set "COMPUTER_NAME=%COMPUTERNAME%"
rem 将网络路径映射到电脑上
set "MAPPED_DRIVE="
for %%i in (T U V W X Y Z) do (
if not exist "%%i:\NUL" (
net use %%i: %NETWORK_PATH% /user:%USERNAME% %PASSWORD% >nul 2>nul
if not errorlevel 1 (
set "MAPPED_DRIVE=%%i:"
goto :break
)
)
)
:break
rem 如果没有可用的盘符,提示错误信息
if not defined MAPPED_DRIVE (
echo 无法映射网络路径为盘符!
) else (
rem 在网络路径上新建txt文件
set "FILE_PATH=%MAPPED_DRIVE%\test.txt"
echo 电脑名:%COMPUTER_NAME%> "%FILE_PATH%"
echo IP地址:%IP_ADDRESS%>> "%FILE_PATH%"
echo 时间:%NOW%>> "%FILE_PATH%"
echo 成功将网络路径映射到盘符%MAPPED_DRIVE%,并在网络路径上创建了文件%FILE_PATH%!
)
endlocal
```
这个bat脚本与前面的Python脚本实现的功能类似,不过使用了不同的命令和语法。它会尝试将网络路径映射到电脑上可用的盘符上,如果没有可用的盘符,则会提示错误信息。如果成功映射到一个盘符上,则会在该盘符上新建一个名为`test.txt`的文件,文件内容包括电脑名、IP地址和当前时间。注意,这里需要使用`net use`命令来映射网络路径,并且需要指定用户名和密码。
阅读全文