วิธีการแบทช์สร้างช่วงของโฟลเดอร์ (000-999) ใน windows ได้อย่างไร


16

ฉันต้องการสร้าง 1,000 โฟลเดอร์ที่มีหมายเลข 000 ถึง 999 ภายในไดเรกทอรี ฉันจะทำสิ่งนี้โดยใช้cmd(เช่นบรรทัดคำสั่ง Windows) ได้อย่างไร


มันเป็นปัญหาแบบนี้ฉันมักจะชี้ผู้คนไปทางไพ ธ อน บรรทัดคำสั่งของ Windows อยู่ไกลจากที่มีประสิทธิภาพ IMO มันต้องการบางสิ่งบางอย่างเพื่อเสริม
Phoshi

1
ฉันแค่ต้องทำมันครั้งเดียวไม่อยากติดตั้งหลามเพียงแค่นั้น ...
user11955

1
ไม่คุณจะต้องเก็บงูเหลือมไว้เพื่อสิ่งอื่น;)
Ignacio Vazquez-Abrams

คำตอบ:


28
for /l %i in (0,1,9) do md 00%i
for /l %i in (10,1,99) do md 0%i
for /l %i in (100,1,999) do md %i

คำอธิบายจากเอกสาร (เช่นประเภทfor /?ที่พรอมต์คำสั่ง):

Runs a specified command for each file in a set of files.

FOR %variable IN (set) DO command [command-parameters]

  %variable  Specifies a single letter replaceable parameter.
  (set)      Specifies a set of one or more files.  Wildcards may be used.
  command    Specifies the command to carry out for each file.
  command-parameters
             Specifies parameters or switches for the specified command.

...

FOR /L %variable IN (start,step,end) DO command [command-parameters]

    The set is a sequence of numbers from start to end, by step amount.
    So (1,1,5) would generate the sequence 1 2 3 4 5 and (5,-1,1) would
    generate the sequence (5 4 3 2 1)

1
นี่เป็นภาษาต่างประเทศหรือเปล่า? มันใช้งานได้ดีมาก! ขอบคุณ!
user11955

! น่ากลัว ฉันแค่ลองมัน คุณจะอธิบายการใช้ไวยากรณ์หรือเชื่อมโยงไปยังคำอธิบายหรือไม่?
Christopher Bottoms

1
@ChristopherBottoms: ฉันหวังว่าคุณจะเข้าใจไวยากรณ์แล้ว แต่ในกรณีที่คุณยังต้องการมันอยู่ให้ไปที่หน้าต่าง cmd และพิมพ์สำหรับ /?
Codism

คำตอบมหัศจรรย์
Brainmaniac

-1
@ECHO OFF && CLS

SET /P x=Insert the name of the place: 
SET /P y=Insert de number of the records: 

SET /A start=1
SET /A z=y+1

REM start the loop
:MKDIR

REM make the directory
MKDIR %x%"__"%start%

REM increment by 1
SET /A start=start+1

REM if we're at the end, return
IF %start%==%z% (GOTO :EOF) ELSE (GOTO :MKDIR)

มันทำงานเป็นไฟล์. bat
NeoMati

มันไม่ทำงาน OP ต้องการชื่อที่มี0คำนำหน้า (000-999) และเขาต้องการตัวเลขโดยไม่มีคำนำหน้า รหัสของคุณสร้างตัวเลขโดยไม่มี 0 นำหน้าและคุณยังเพิ่มคำนำหน้าแปลก ๆ ตัวอย่างเช่นถ้าชื่อของสถานที่ที่abcคุณสร้างabc"__"0, abc"__"1... abc"__"10...abc"__"999
phuclv
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.