.bat批处理文件夹

炮灰 发布于 2011/09/20 11:16
阅读 814
收藏 0

我的工作为从服务器上下载文件到本地,本地路径为 d:\date\1,d:\date\2,...,服务器路径为

/gsmex/tongji/prov1/01/cu01/up03/*;.....

问题是,服务器上对应文件夹内不一定都存在文件,但是下到本地必须是有文件的文件夹,

我现在的想法是 1,判断本地文件夹是否存在(文件夹名字1,2).。。 如果存在下载;否则建立,再下载;

这部已经实现,

2,判断本地文件夹是否为空,为空 删除 。。这个没实现(求助)。

1步和2步是想写2个文件,不知道是否能写在一个文件中。

本人没写过,只是在网上找资料,请大家拍砖,。

加载中
0
炮灰

for /f "delims=" %%a in ('dir/s/ad/b  d:\data\*') do rd /q "%%a" 2>nul

这样解决了

0
穿衣服比较麻烦
穿衣服比较麻烦
谷歌一下一大堆,批处理N年的东西了,这方面的资料相当多,你这种问题也相当多。
0
皮总
皮总
为什么不装一个rsync
rsync -rvz --delete  --prune-empty-dirs /gsmex/tongji/prov1/01/ /cygdrive/d/date/1/ 

用批处理来判断目录为空, 如果为空则删除:

for /f "tokens=*" %%i in ('dir /b /s /AD D:\date') do (
   dir /b /A-D "%%i" 1>nul 2>nul
   if "%errorlevel%"=="1" (
       rd /Q "%%i"
   )
)

0
redraiment
redraiment

直接用 rmdir 命令就可以了,它默认只能删除空目录,如果文件夹非空,就不会删除:

for /d %%f in (*) do rmdir %%f

返回顶部
顶部