1樓:bb石俊傑
::測試通過可用,下面的(1,1,10)的10是資料夾放入***檔案10個數,自己可以修改。
:agset/a out+=1
md %out%
echo md %out%
for /l %%m in (1,1,10)do (
echo m=%%m
set n=0&cd.>ml.txt
>>ml.txt
set/a m=!random!%%!n!+1
echo rand=!m!
find /i "play!m!x" ml.txt>tmp.txt
for /f "skip=2 tokens=1,* delims= " %%i in (tmp.txt)do move /y "%%j.***" "%~dp0%out%\%%j.
***"
)dir /b *.***&&goto ag
del ml.txt tmp.txt
2樓:匿名使用者
既問到我,怎麼問你情況也沒個回答,麥兜兄弟答了一種,也許你是想看這類批處理怎麼寫,我就自己再假定一種情況,給你寫個在批處理檔案處建01~10共10個資料夾,假定d:\***處有1000多個檔案平均移入到這10個檔案裡,但順序是隨機的,然後刪除d:\***
(**未經檢測)
@echo off&color f1
setlocal enabledelayedexpansion
set dn=d:\***
echo 稍候...
for /l %%l in (1,1,10)do (set dd=00%%l
if not exist !dd:~-2! md !dd:~-2!)
for /f "delims=" %%a in ('dir/b/a-d "%dn%\"')do call :yky "%%a"
for /f "tokens=2 delims==" %%b in ('set #')do (
set/a n+=1
set "nn= !n!"
set/a "m=(n-1)%%10+101"
move "%dn%\%%b" !m:~-2!\
cls&echo/&echo 正在隨機移動第!nn:~-3! 個: "%dn%\%%b" ==^> !m:~-2!)
rd "%dn%"
endlocal
cls&echo/&echo 處理完畢 按任意鍵退出...
pause>nul
exit/b
:yky
set ran=%random%
if defined #%ran% goto yky
set #%ran%=%~1&goto :eof
3樓:匿名使用者
有難度,先標記,慢慢寫,未完
dir /b>1.txt
set /a a=!random!%%1001for /f "delims=" %%i in ("1.txt") do (
set /a b+=1
if b equ a (copy %%i )
4樓:麥兜
for /f "delims=" %%1 in ('dir/b "*.***"')do if "%%1" neq %0 echo %%1>>n
for /l %%1 in (1,1,10)do (set/a s%%1=!random!%%999+1
set a=!a! !s%%1!)
set a=!a:~1!
for %%1 in (!a!)do for /f "delims=" %%2 in ('type "n"')do (set/a x+=1
if "!x!"=="%%1" copy "%%2" "d:\a")
pause
檔案重新命名的批處理命令,用bat檔案重新命名一個檔案的命令怎麼寫
echo off setlocal enabledelayedexpansion for f tokens 1,2 delims i in dir b bmp do set n j set n 0000 n ren i j k i n 4,4 k 說明 把上面的 複製到記事本里面,儲存為 bat 格...
批處理一行命令求註釋
管道命令。將前者的輸出作為後面命令的輸入!比如,如果你要刪除一個非空資料夾123 rd s 123,會提示你是否確認。這是你要輸入n s來確認。如果想節約時間可以這樣輸入echo y rd s 123,這樣,系統就將前面echo命令的輸出結果y傳遞給後面的命令。就不會出現提示了。後附 前者為手工輸入...
批處理複製檔案至指定資料夾,並自動重新命名
1 建立一個新資料夾,將所有學生作業資料夾物件複製一份放入其中。2 開始 執行,輸入cmd,開啟cmd視窗。3 在cmd視窗中,切換當前盤到目標資料夾所在盤,並切換當前資料夾到目標資料夾。4 在cmd視窗中,用dir命令查詢所有符合條件的資料夾,並將顯示結果重定向輸出到當前檔案下的rename.tx...