ฉันมีไฟล์ข้อความ 50 ไฟล์ในไดเรกทอรีเดียว
มีวิธีใช้บรรทัดคำสั่งของ Windows ในการเชื่อมไฟล์เหล่านั้นเป็นไฟล์เดียวหรือไม่?
ฉันใช้Windows Vista
ฉันไม่ต้องการพิมพ์ชื่อไฟล์ทั้งหมด
ฉันมีไฟล์ข้อความ 50 ไฟล์ในไดเรกทอรีเดียว
มีวิธีใช้บรรทัดคำสั่งของ Windows ในการเชื่อมไฟล์เหล่านั้นเป็นไฟล์เดียวหรือไม่?
ฉันใช้Windows Vista
ฉันไม่ต้องการพิมพ์ชื่อไฟล์ทั้งหมด
คำตอบ:
ฉันไม่ต้องการพิมพ์ชื่อไฟล์ทั้งหมด
มันง่ายที่จะหลีกเลี่ยง เปิดพรอมต์คำสั่งในโฟลเดอร์นี้และพิมพ์คำสั่งต่อไปนี้:
copy /b *.txt newfile.txt
Enterกด
ตอนนี้คุณจะมีไฟล์ข้อความทั้งหมดในโฟลเดอร์นี้เรียงลำดับตามวันที่จากน้อยไปหามากผสานเป็นไฟล์เดียวชื่อ newfile.txt
เป้าหมายสูงสุดของฉันคือการจัดเก็บเนื้อหาของไฟล์ข้อความแต่ละไฟล์ในคอลัมน์แยกต่างหากของแผ่นงาน Excel
นี่คือบทแนะนำที่อาจช่วยให้คุณบรรลุ "เป้าหมายสูงสุด" ของคุณ:
หากต้องการเพิ่ม newLine ที่จุดสิ้นสุดของแต่ละไฟล์ที่ต่อกันให้ใช้type
แทนcopy
ดังนี้:
type *.txt > newfile.txt
.txt
จากnewfile
และปัง! ที่นั่นคุณมีมัน
type x.log.* > merged.log
โดยเฉพาะไฟล์แบตช์ บรรทัดใหม่นั้นง่ายต่อการจัดการ
type
มานานแล้วตั้งแต่ DOS 3.3 ฉันไม่รู้ว่าคุณสามารถใช้ไฟล์มาสก์ได้ เกิดขึ้นเมื่อใด
สมมติว่าคุณกำลังพูดถึงการต่อท้ายไฟล์ข้อความcopy
คำสั่งสามารถใช้เพื่อผนวกเข้าด้วยกัน:
copy file1+file2+file3 targetfile
หากคุณมีไฟล์จำนวนมากคุณสามารถวนซ้ำได้โดยเพิ่มหนึ่งไฟล์ต่อครั้ง
สำหรับไฟล์ไบนารีให้เพิ่ม/b
ตัวเลือก '':
copy /b file1+file2+file3 targetfile
นี่ถือว่าคุณรู้ว่าไฟล์ไบนารีที่คุณกำลังทำงานอยู่นั้นสามารถผนวกกลับไปด้านหลังได้ ถ้าไม่คุณจะได้รับข้อมูลที่ไร้ประโยชน์
copy
docs.microsoft.com/en-us/windows-server/administr/…
เรียกใช้คำสั่งต่อไปนี้ในพร้อมท์คำสั่ง:
for %f in (*.txt) do type "%f" >> output.txt
output.txt
ไฟล์. bat ต่อไปนี้จะผนวกไฟล์ * .for ทั้งหมดยกเว้นไฟล์ที่ชื่อว่า XIT.for ไปยังไฟล์เปล่าที่ชื่อว่า MASTER.for
type NUL > MASTER.for
FOR %%G IN (*.for) DO IF NOT "%%G" == "XIT.for" copy /A MASTER.for+"%%G" && echo. >> MASTER.for
:)
for %f in (*.txt) do ((echo. & echo == %f == & echo. & type %f ) >> *.txt.dat )