iT邦幫忙

0

Windows 無法同時執行16個批次檔

  • 分享至 

  • xImage

無論XP、WIN7,bat批次檔選住15個含以下,能出現『開啟』或是執行
超過15個,就無法『開啟』或是執行

有解決方法嗎?真是奇怪限制。

看更多先前的討論...收起先前的討論...
小成 iT邦高手 10 級 ‧ 2011-12-15 11:02:24 檢舉
嗯...真的耶
執行的選項會消失
真奇妙

話說就建立一個BAT來幫忙執行這20個批次?
start 1.bat
start 2.bat

這樣
如果檔名有順序的話乾脆直接用for /l來跑迴圈好了XD
for /l %%i in (1,1,20) do start %%i 
小成 iT邦高手 10 級 ‧ 2011-12-15 11:03:27 檢舉
ㄟ,我怎麼忘記Start這個指令
用Start就可以了耶

可是,我要用英文字母(代表磁碟機代號),沒法迴圈吧?
小成 iT邦高手 10 級 ‧ 2011-12-15 11:53:28 檢舉
磁碟機代號可能就要自己打了?
for %%i in (c d e f g) do command
esyc提到:
for %%i in (c d e f g) do command

好強喜歡
好猛,偶像!!
可以了,改到回答吧........試用滿意、付費,哈哈
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
2
小成
iT邦高手 10 級 ‧ 2011-12-15 14:06:01
最佳解答

雖然我很想說:請看VCR
不過我怕被打,所以還是再PO一次好了

若要同時執行很多很多檔案可以建立一個批次來幫忙執行

<pre class="c" name="code">start 1.bat  
start 2.bat  

如果檔名有順序的話就直接用for /l來跑迴圈

<pre class="c" name="code">for /l %%i in (1,1,20) do start %%

i

如果位於不同的磁碟區,就列舉吧

<pre class="c" name="code">for %%i in (c d e f g) do command

回答樓上,至於為什麼要分開成不同的工作來執行...
綜合之前堂叔問的,因為他這些工作是需要插入不同的隨身碟來進行,所以大概是每次插入不同的隨身碟,數量也可能不是固定的吧? 又或者有其他原因?

看更多先前的回應...收起先前的回應...
小成 iT邦高手 10 級 ‧ 2011-12-15 14:06:42 檢舉

那個i跳出去外面了= =

<pre class="c" name="code">for /l %%i in (1,1,20) do start %%i

黑啊,因為我要『同時複製或同步資料,到USB外接磁碟機』,數量高達....目前預估22個

小成 iT邦高手 10 級 ‧ 2011-12-15 14:58:49 檢舉

磁碟機代號夠用嗎= ="a
還是你掛載成ntfs資料夾了?

esyc提到:
磁碟機代號夠用

呵呵,以前真的擔心過,所以我才『只能22個』(26-4=22哈哈)
不能掛到NTFS唷,因為她還是會『預設就是跳磁碟機代號』,掛了還是會跳啊。

完整方法:
1.單一批次檔內使用Start呼叫其他批次檔,就不會被15數目限制
2.每個批次檔最後要加上EXIT,以免他沒有自動離開CMD畫面

2
aeolus0829
iT邦研究生 4 級 ‧ 2011-12-15 13:11:09

我比較好奇你 "同時執行" 15個的理由 ...

同時是只同時同分同秒執行吧?什麼樣的工作必須拆成15個,而不是在一個批次檔裡面依次序先後完成?

4
michaelwan
iT邦高手 1 級 ‧ 2011-12-16 09:03:12

http://support.microsoft.com/kb/2022295

是這個問題所產生的嗎?

讚,感謝提供好文件參考,這裡面寫到:
1.只能開啟15個文件是系統設計預設
2.好像可以透過修改Regedit變更數量(原本沒有,是要增加的意思?)
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer
Name : MultipleInvokePromptMinimum
Type : DWORD
Default : 15 (decimal)

我的作法是:以批次檔裡的Start分別呼叫,即可超過15個,不用管Regedit

我要發表回答

立即登入回答