在我的情况下,如何使用批处理文件脚本制作数组列表?
Posted
技术标签:
【中文标题】在我的情况下,如何使用批处理文件脚本制作数组列表?【英文标题】:How to make array list in my case using Batch File Script? 【发布时间】:2022-01-13 07:11:21 【问题描述】:我想将文件从一个文件夹复制到本地网络中的多台电脑。
我想在下面的数组列表中添加 IP 地址
set list=\\192.168.55.102
set list=%list%;\\192.168.55.103
set list=%list%;\\192.168.55.104
set list=%list%;\\192.168.55.105
set list=%list%;\\192.168.55.106
然后,我将通过以下代码将文件复制到上述IP。但以下代码适用于 1 个 ip。它正在工作并将文件复制到目标位置
net use "\\192.168.55.102\c$\foldername" /user:%username% %password%
:copy
copy "C:\Desktop\Update" "\\192.168.55.102\c$\foldername"
IF ERRORLEVEL 0 goto disconnect
goto end
:disconnect
net use "\\192.168.55.102\c$\foldername" /delete
goto end
:end
我尝试了下面的方法,但它不起作用
@echo off
for %a% in (%list%) do (
net use %a%\foldername /user:%username% %password%
:copy
copy "C:\Desktop\Update" %a%\foldername
IF ERRORLEVEL 0 goto disconnect
goto end
:disconnect
net use %a%\foldername /delete
goto end
:end
)
【问题讨论】:
【参考方案1】:创建一个变量(不是数组)并添加 IP,以空格、逗号或分号分隔。然后连接到IPC$
以允许身份验证,复制文件,然后删除IPC$
共享:
@echo off
set "list=192.168.55.102 192.168.55.103 192.168.55.104 192.168.55.105 192.168.55.106"
for %%i in (%list%) do (
net use "\\%%i\IPC$" /user:%username% %password%
copy "C:\Desktop\Update" "\\%%i\foldername"
net use /d "\\%%i\IPC$"
)
【讨论】:
以上是关于在我的情况下,如何使用批处理文件脚本制作数组列表?的主要内容,如果未能解决你的问题,请参考以下文章
如何在没有任何数据库的情况下将用户上传的文件缓存在我的网站中
Maxscript netrender 文件名 - 尝试在不附加帧号的情况下保存