bat批處理移動檔案,如何用批處理移動檔案及資料夾?

2022-02-12 09:20:32 字數 3747 閱讀 4338

1樓:匿名使用者

@echo off

color 0b & cls

echo.

echo 批量釋放檔案...

echo.

echo chapter裡面如果有目錄結構,再hi我增加codeecho 因為不知道你要chapter裡面目錄結構檔案如何處理echo 是帶目錄一起移動,還是目錄資料夾全部刪除,提取出檔案?

echo.

echo chapter裡面檔案是被移動出來,改copy是複製出來echo.

for /f "delims=" %%i in ('dir /o /b /s /a:d *chapter*') do (

echo %%~dpi

pushd %%~dpi

move /y chapter\*.* . 2>nulpopd

)echo.

pause

2樓:匿名使用者

copy /y c:\a.txt d:\a.txt測試通過,呵呵

/y就是自動確認覆蓋用的

你可以打copy /?

就可以看到幫助資訊

還有xcopy也很好用

在dos下打xcopy /?檢視吧

如何用批處理移動檔案及資料夾?

3樓:

1、舉個例子,比如我們要把資料夾1-5移動到彙總資料夾中,如下圖所示,

2、我們開啟一個**,在第一列中輸入move,在第二列中輸入每一個資料夾的名字,在第三列中輸入想要移動的資料夾的名字,如下圖所示,

3、然後在資料夾中新建一個文字文件,如下圖所示,4、把文字文件的字尾名改為bat,然後點選是,如下圖所示,6、複製**中剛才我們所述的內容,如下圖所示,7、貼上到文字文件中,如下圖所示,

8、貼上完成之後,記得儲存文件,如下圖所示,9、然後雙擊執行文字文件,如下圖所示,

10、最後我們就可以看到資料夾,按照我們的需要,自動移動到彙總資料夾中了,如下圖所示,

4樓:兩隻路邊的螞蟻

@echo off

set "xz=%*"

for %%a in (%xz%) do (if exist "%%~dpnxa\" (echo d|xcopy %%a /e /r /k "d:\123\%%~na" && rd /s /q %%a) else (move /y %%a "d:\123\")

)echo ok&pause>nul

改了個簡單點的,現在試試效果,整那麼多沒用的**,有的人不嫌累??

5樓:麥兜

@echo off&title %0

echo 需要移動的檔案

echo //---------------檔案---------------\\

for %%1 in (%*)do echo %%1

set/po=請輸入目標完整路徑:

::作個判斷,引用樓下**,rd是刪除資料夾.所以以防誤刪檔案,做了少量修改!

:restart

cls&echo 是否真的移動檔案?(yes/quit).&echo.&echo 是就選擇y,如果不是就選擇q退出

set/pp=請輸入:

if /i %p% == y for %%1 in (%*)do if /i exist "%%1\" (echo d|xcopy /e /r /k %* "%o%\%~n1" && rd /q %*) else (move /y %* "%o%")

if /i %p% == q title 安全離開

goto restart

6樓:匿名使用者

move %* d:\123

批處理移動資料夾下檔案

7樓:

可以寫成這條命令,move d:\a\ce*.* e:

\b\*.* 後面可以新增 /y 表示如果遇到e:\b資料夾下有相同檔案時就會不作提示直接覆蓋。

但我個別不建議這樣直接使用,因有些個別檔案可能被防毒軟體掃描或個別檔案正在被其它軟體讀寫,這樣的話你在移動檔案時會自動中止的,所以建議這樣寫。

xcopy d:\a\ce*.* e:\b\*.* /y (表示先複製檔案)

del d:\a\ce*.* /f /q (表示刪除檔案)這樣安全的多。

bat如何移動資料夾?

8樓:匿名使用者

這種後面兩個點的資料夾是windows下的漏洞,無法移動

9樓:匿名使用者

樓上考慮周全。

move不能跨驅動移動資料夾(可以跨驅動移動檔案)。

10樓:匿名使用者

move貌似不能這樣搞吧

你可以換種思路

剪下==複製+刪除

你可以先用xcopy命令複製資料夾,然後用rd命令刪除這個資料夾

移動檔案批處理命令

11樓:匿名使用者

不知道lz這個批處理的目的是什麼,直接把需要的功能貼出來吧

ip_s.txt裡面的內容,也就是%%a,在內層的迴圈中完全沒有用到

而且for命令如果用/r引數,而in後面跟的是一個檔名的話,不會讀取這個檔案的內容,而是遍歷當前目錄,並且把括號裡的內容加在每一個資料夾下

其實批處理是支援換行的,完全可以寫成下面這樣更加易讀的格式

@echo off

for /r %%a in (ip_s.txt) do (

for /r %path_s% %%i in (*.xml) do (

clsecho moving: %%i

move "%%i" %path_d% /y >null

echo.

echo done!))

根據我的推測是想用同一個批處理在ip不同的電腦上執行,達到把某個目錄下的xml檔案全部移動到另一個資料夾,每一臺電腦上的源目錄和目標目錄都不同

可以把ip_s.txt,path_s.txt,path_d.txt合併成一個txt,裡面每一條記錄形如

192.168.0.1 d:\source e:\destination

中間可以用任意符號分隔,不過我推薦用逗號或者分隔符(tab),因為這兩種符號可以和excel互相匯入

比如另存為path.txt

然後用for /f "delims=, tokens=1,2,3" %%a in(path.txt) do ()

delims是分隔符列表,tokens是要讀取的行數

上面這句就把path.txt裡的每一樣的第

一、二三列分別賦給%%a %%b %%c

12樓:匿名使用者

move c:\你的桌面路徑\2014*.txt e:\other\start 「d:\my documents\1.xls」

「你的桌面路徑」自己編輯完整

搞定,採納哦

13樓:風之瘋子

if exist "d:\other" (c:cd %userprofile%\桌面move 2014*.txt d:\other\ /y) else (

md d:\other

c:cd %userprofile%\桌面move 2014*.txt d:\other\ /y)start d:\"my documents"\1.xls

如何編輯以下BAT批處理檔案

只有98系統目錄下的autoexec.bat檔案才會開機就執行,並且你的磁碟格式必須是fat32才能夠按照qxzt說的編寫。別的沒有集合dos的系統根本就不會去執行autoexec.bat。寫入 echo off move f 123 555.txt c aaa 555.txt a 就可以了.用re...

bat 檔案多條命令的執行,批處理 for命令後的do,如果要執行多條命令,如何寫?

下面這樣會把所有輸出檔案寫到批處理所在路徑。mvn eclipse eclipse dp1.txtcd uniframework mvn eclipse eclipse dp2.txtcd unibizibe mvn eclipse eclipse dp3.txtcd unilaputa mvn e...

如何將檔名加序數?用bat批處理命令

看你是八級應該有些基礎了,稍微修改一下就可以用了。核心與你的問題是切合的。看來你沒把問說說清楚,能否說清楚些。在本機上測試是成功的。echo off setlocal enabledelayedexpansionfor f delims i in dir b o n doc do set b i c...