2014-03-14 66 views
0

這幾乎是一個代碼,使約308萬個文件夾。任何方式使這個代碼變得更小/更快?...這是安全的運行?

for %%a in (A, B, C, D, E, F, G, H, I, J, K , L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z) do (
md %%a 
PUSHD %%a 
for %%b in (A, B, C, D, E, F, G, H, I, J, K , L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z) do (
    md %%b 
    PUSHD %%b 
    for %%c in (A, B, C, D, E, F, G, H, I, J, K , L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z) do (
     md %%c 
     PUSHD %%c 
     for %%d in (A, B, C, D, E, F, G, H, I, J, K , L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z) do (
      md %%d 
      PUSHD %%d 
      for %%e in (A, B, C, D, E, F, G, H, I, J, K , L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z) do (
       md %%e 
       PUSHD %%e 
       for %%f in (A, B, C, D, E, F, G, H, I, J, K , L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z) do (
        md %%f 
       ) 
       POPD 
      ) 
      POPD 
     ) 
     POPD 
    ) 
    POPD 
) 
POPD 
) 

但不管怎麼說,我想知道是否有做這種/處理速度更快更簡單的方法。任何人有任何線索?

另外...這是甚至安全運行?

+0

需要創造3.08億文件夾,所以很少出現對我來說,我沒有打擾優化它。 –

+0

是的......我也剛剛意識到,這將使我的電腦超過3天。 – Raistlin

+0

''甚至可以安全運行......撇開諷刺,爲什麼你需要運行這個 – Jonesopolis

回答

0

我真的不想創建那麼多的目錄,所以我簡化了你的例子,只做了一些,它的工作就很好。我從一個子文件夾中運行它,所以這就是爲什麼下面的樹看起來如此。

@echo off 
for %%a in (A, B, C) do (
    for %%b in (A, B, C) do (
    for %%c in (A, B, C) do (
     md %%a\%%b\%%c 
    ) 
) 
) 

你不需要pushdpopd命令。您也不需要在for循環的每個級別創建文件夾。您只需在最內層循環中使用一個md %%a\%%b\%%c\%%d\%%e\%%f命令創建它們。

這裏的tree

C:. 
├───A 
│ ├───A 
│ │ ├───A 
│ │ ├───B 
│ │ └───C 
│ ├───B 
│ │ ├───A 
│ │ ├───B 
│ │ └───C 
│ └───C 
│  ├───A 
│  ├───B 
│  └───C 
├───B 
│ ├───A 
│ │ ├───A 
│ │ ├───B 
│ │ └───C 
│ ├───B 
│ │ ├───A 
│ │ ├───B 
│ │ └───C 
│ └───C 
│  ├───A 
│  ├───B 
│  └───C 
└───C 
    ├───A 
    │ ├───A 
    │ ├───B 
    │ └───C 
    ├───B 
    │ ├───A 
    │ ├───B 
    │ └───C 
    └───C 
     ├───A 
     ├───B 
     └───C 
+0

謝謝!我對通常的批處理文件和編碼很陌生。這正是我尋找的確切類型,不確定是否存在這樣的命令! – Raistlin

相關問題