Re: [問題] Dos AutoBatch
※ 引述《TwoDemon (店小二)》之銘言:
: 如果將一個目錄下一次移10個檔至另一個目錄。
: 我原來的寫法是全移: move D:\test1\*.txt C:\test2\
: 但現在要改成一次最多只移10個檔。
: 但,要怎麼寫成一個完整可以運作的script,希望版上高手幫幫忙,謝謝!
如果認真要寫,以目前現存以及殘存的系統來說,
要看很多種DOS shell script版本.
目前在Windows XP的HP修正版本(筆記型電腦加裝了HP修改版的Windows說明檔),
程式架構大概是:
@echo off
setlocal
set count=0
for /f "usebackq" %%s in (`dir /b`) do set /a count=%count%+1 & echo %count% %%s
endlocal
@echo on
這樣輸出的答案應該是每行有一個行號與一個檔名.
然後可能可以根據find命令來找出1到10行.
*但是!!!* 上述程式在我的電腦印出行號全都是0, 在for中每次
set /a count=%ccount%+1並不立刻修改到count內容,
在命令列中輸入
for /f "usebackq" %s in (`dir /b`) do set /a count=%count%+1 & echo %count% %s
就看得出來,每次set /a count=%count%+1答案都一樣,而後來
echo %count% %s的行號也都一樣,實在沒什麼辦法.
如果可以把for /l %i in (1,1,10) do echo %i與
for /f "usebackq" %s in (`dir /b`) do echo %s適當地結合,
也許還做得下去.
另一個問題是,如果在XP的shell做得出來,也不敢保證在MS-DOS 6.22也能這樣用...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.112.228.167
推
01/18 15:15, , 1F
01/18 15:15, 1F
→
01/18 15:16, , 2F
01/18 15:16, 2F
→
01/18 15:17, , 3F
01/18 15:17, 3F
→
01/18 17:39, , 4F
01/18 17:39, 4F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 8 篇):