คำถามติดแท็ก batch-file

ชุดไฟล์เป็นไฟล์ข้อความที่มีชุดคำสั่งที่ดำเนินการโดยล่ามคำสั่งในระบบ MS-DOS, IBM OS / 2 หรือระบบ Microsoft Windows


3
จะตรวจสอบว่าไฟล์มีอยู่ในไฟล์แบตช์ได้อย่างไร?
ฉันต้องสร้าง.BATไฟล์ที่ทำสิ่งนี้: หากC:\myprogram\sync\data.handlerมีอยู่ให้ออก; หากC:\myprogram\html\data.sqlไม่มีอยู่ให้ออก; ในC:\myprogram\sync\การลบไฟล์และโฟลเดอร์ทั้งหมดยกเว้น ( test, test3และtest2) คัดลอกC:\myprogram\html\data.sqlไปยังC:\myprogram\sync\ โทรแฟ้มชุดอื่น ๆ sync.bat myprogram.iniที่มีตัวเลือก ถ้าอยู่ในสภาพแวดล้อม Bash มันง่ายสำหรับฉัน แต่ฉันไม่รู้วิธีทดสอบว่ามีไฟล์หรือโฟลเดอร์อยู่หรือไม่และเป็นไฟล์หรือโฟลเดอร์
186 windows  batch-file  cmd 

11
ฉันจะเรียกใช้โปรแกรมจากแฟ้มแบตช์โดยไม่เปิดคอนโซลทิ้งไว้หลังจากที่โปรแกรมเริ่มทำงานได้อย่างไร
ในขณะนี้ไฟล์แบทช์ของฉันมีลักษณะเช่นนี้: myprogram.exe param1 โปรแกรมเริ่มทำงาน แต่ DOS Window ยังคงเปิดอยู่ ฉันจะปิดมันได้อย่างไร

15
วิธีร้องขอการเข้าถึงของผู้ดูแลระบบภายในไฟล์แบตช์
ฉันพยายามเขียนไฟล์แบตช์เพื่อให้ผู้ใช้ของฉันเรียกใช้จากเครื่อง Vista ด้วย UAC ไฟล์กำลังเขียนไฟล์โฮสต์ใหม่ดังนั้นจึงจำเป็นต้องเรียกใช้ด้วยสิทธิ์ผู้ดูแลระบบ ฉันต้องสามารถส่งอีเมลพร้อมลิงก์ไปยังไฟล์. bat ได้ พฤติกรรมที่ต้องการคือเมื่อคลิกขวาที่ไฟล์และพูดว่า Open พวกเขาจะได้รับหนึ่งในไดอะล็อก UAC ที่ทำให้หน้าจอมืดลง พวกเขาเพิ่งเห็น "การเข้าถึงถูกปฏิเสธ" บนหน้าต่างบรรทัดคำสั่ง เป็นไปได้ที่จะทำแตกต่างกันอย่างไร

5
ทำไมบรรทัดแรกของไฟล์แบตช์ Windows นี้ทำงาน แต่ทั้งสามบรรทัดดำเนินการในเชลล์คำสั่ง
ฉันมีไฟล์แบตช์ที่รันคำสั่ง Maven สามคำสั่งหนึ่งคำสั่งหลังจากนั้น แต่ละคำสั่งสามารถดำเนินการได้สำเร็จในสคริปต์ - ด้วยตัวเอง! แต่เมื่อฉันเพิ่มทั้งสามคำสั่งลงในไฟล์เดียวกันเฉพาะคำสั่งแรกเท่านั้นที่รันก่อนที่สคริปต์จะออก มีความคิดอะไรไหม mvn install:install-file -DgroupId=gdata -DartifactId=base -Dversion=1.0 -Dfile=gdata-base-1.0.jar -Dpackaging=jar -DgeneratePom=true mvn install:install-file -DgroupId=gdata -DartifactId=blogger -Dversion=2.0 -Dfile=gdata-blogger-2.0.jar -Dpackaging=jar -DgeneratePom=true mvn install:install-file -DgroupId=gdata -DartifactId=blogger-meta -Dversion=2.0 -Dfile=gdata-blogger-meta-2.0.jar -Dpackaging=jar -DgeneratePom=true นอกจากนี้หากฉันคัดลอกทั้งสามคำสั่งและวางลงในเชลล์คำสั่ง (cmd.exe) พวกเขาจะดำเนินการทีละคำสั่งโดยไม่มีปัญหา ดังนั้นนี่คือปัญหาบางอย่างกับไฟล์แบทช์ดอส


11
เปิด CMD ค้างไว้หลังจากไฟล์ BAT ทำงาน
ฉันมีไฟล์ค้างคาวเช่นนี้: ipconfig นั่นจะพิมพ์ข้อมูล IP ไปที่หน้าจอ แต่ก่อนที่ผู้ใช้จะสามารถอ่านข้อมูลนั้น CMD จะปิดตัวเอง ฉันเชื่อว่า CMD ถือว่าสคริปต์เสร็จสิ้นดังนั้นจึงปิดตัวลง ฉันจะเปิด CMD ต่อไปได้อย่างไรหลังจากสคริปต์เสร็จสิ้นแล้ว
169 batch-file  cmd 

8
ไฟล์ BAT: เปิดหน้าต่างใหม่ cmd และดำเนินการคำสั่งในนั้น
ฉันพยายามเปิดหน้าต่างคำสั่งใหม่ในไฟล์ BAT: start %windir%\system32\cmd.exe หลังจากเปิดแล้วฉันต้องการรันคำสั่ง BAT ในหน้าต่างใหม่: echo "test in new window" ฉันจะทำสิ่งนี้ได้อย่างไร

4
จะอ่านเนื้อหาของไฟล์เป็นตัวแปรในแบตช์ไฟล์ได้อย่างไร?
ไฟล์ชุดนี้จะปล่อยบิลด์จาก TEST เป็นสด ฉันต้องการเพิ่มข้อ จำกัด การตรวจสอบในไฟล์นี้เพื่อให้แน่ใจว่ามีเอกสารเผยแพร่ที่รองรับในโฟลเดอร์เฉพาะ "C:\Program Files\Windows Resource Kits\Tools\robocopy.exe" "\\testserver\testapp$" "\\liveserver\liveapp$" *.* /E /XA:H /PURGE /XO /XD ".svn" /NDL /NC /NS /NP del "\\liveserver\liveapp$\web.config" ren "\\liveserver\liveapp$\web.live.config" web.config ดังนั้นฉันมีคำถามสองสามข้อเกี่ยวกับวิธีการบรรลุเป้าหมาย ... มีversion.txtไฟล์อยู่ใน\\testserver\testapp$โฟลเดอร์และเนื้อหาเดียวของไฟล์นี้คือหมายเลขบิลด์ (เช่น 45 - สำหรับบิลด์ 45) ฉันจะอ่านเนื้อหาของversion.txtไฟล์ลงในตัวแปรในแบตช์ไฟล์ได้อย่างไร ฉันจะตรวจสอบว่ามีไฟล์\\fileserver\myapp\releasedocs\ {build}.docอยู่โดยใช้ตัวแปรจากส่วนที่ 1 แทนที่ {build} ได้อย่างไร
161 batch-file 

5
การใช้พารามิเตอร์ในแบตช์ไฟล์ที่บรรทัดรับคำสั่งของ Windows
ใน Windows คุณเข้าถึงอาร์กิวเมนต์ที่ส่งผ่านเมื่อเรียกใช้ไฟล์แบตช์ได้อย่างไร hello.batตัวอย่างเช่นสมมติว่าผมมีโปรแกรมที่ชื่อว่า เมื่อฉันป้อนhello -aที่บรรทัดคำสั่งของ Windows ฉันจะให้โปรแกรมของฉันรู้ว่า-aมันถูกส่งเป็นอาร์กิวเมนต์ได้อย่างไร

6
วิธีสร้างลูปแบบไม่สิ้นสุดในไฟล์แบตช์ Windows
นี่คือสิ่งที่ฉันต้องการในไฟล์แบตช์ ฉันต้องการที่จะสามารถเรียกใช้ "ทำสิ่งที่" อีกครั้งเมื่อใดก็ตามที่ฉันกดปุ่มใด ๆ เพื่อไปผ่าน "หยุด" while(true){ Do Stuff Pause } ดูเหมือนว่ามีเพียงforลูปเท่านั้นและไม่มีwhileลูปในแบทช์ ฉันจะสร้างวงวนไม่สิ้นสุดได้อย่างไร

2
ตรวจสอบว่ามีโฟลเดอร์อยู่หรือไม่โดยใช้ไฟล์. bat [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน6 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันต้องการตรวจสอบว่ามีบางโฟลเดอร์ (FolderA) อยู่หรือไม่และถ้าเป็นเช่นนั้นจะมีข้อความปรากฏขึ้นจากนั้นจะมีการออกจากแบตช์ไฟล์ หาก FolderA ไม่มีอยู่ฉันต้องการตรวจสอบว่ามีโฟลเดอร์อื่น (FolderB) อยู่หรือไม่ หาก FolderB ไม่มีอยู่ข้อความควรถูกแสดงและควรสร้างโฟลเดอร์และถ้า FolderB ไม่มีอยู่ข้อความนั้นควรจะแสดงขึ้นมา ใครบ้างมีความคิดเกี่ยวกับโค้ดที่ฉันสามารถใช้บน notepad เพื่อสร้างไฟล์แบตช์เพื่อให้ฉันทำสิ่งนี้ได้บ้าง ทั้งหมดนี้ต้องทำใน.batไฟล์เดียว


8
เรียกใช้ไฟล์แบตช์เป็นบริการ Windows
ในการเรียกใช้แอปพลิเคชั่นหนึ่งไฟล์แบตช์จะต้องถูกเตะออก (ซึ่งจะทำสิ่งต่าง ๆ เช่นเริ่มท่าเทียบเรือแสดงบันทึกสด ฯลฯ ) แอปพลิเคชันจะทำงานเฉพาะเมื่อไฟล์แบทช์นี้กำลังทำงาน ฉันจึงถูกบังคับให้ต้องเปิดไฟล์แบตช์นี้และไม่ออกจากระบบเซิร์ฟเวอร์ Windows ไฟล์ชุดนี้สามารถเรียกใช้เป็นบริการได้หรือไม่? ฉันกำลังทดลองกับหนึ่งในข้อเสนอแนะจากคำถามที่คล้ายกัน

8
ตรวจสอบสถานะของหนึ่งพอร์ตบนรีโมตโฮสต์ [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน4 ปีที่แล้ว ปรับปรุงคำถามนี้ ฉันต้องการบรรทัดคำสั่งที่สามารถตรวจสอบสถานะพอร์ตบนรีโมตโฮสต์ ฉันพยายามping xxx.xxx.xxx.xxx:161แต่ไม่รู้จัก "โฮสต์" ฉันคิดว่ามันเป็นคำตอบที่ "ดี" จนกว่าฉันจะทำคำสั่งเดียวกันกับโฮสต์ที่ฉันรู้ว่าพอร์ตนั้นเปิด นี่เป็นไฟล์แบตช์บน Windows ที่จะตรวจสอบสถานะของพอร์ตระยะไกลจากนั้นเรียกใช้คำสั่งที่ใช้พอร์ตระยะไกลนั้นเพื่อรับข้อมูลจากนั้นคำสั่งตรวจสอบพอร์ตระยะไกลอีกครั้งจากนั้นคำสั่งที่ใช้พอร์ตนั้นบนเซิร์ฟเวอร์ถัดไป และอื่น ๆ ฉันดูทุกที่และคิดว่า ping อาจทำได้ แต่ต้องมี ping หลายเวอร์ชันฉันคิดว่าเพราะเซิร์ฟเวอร์ที่ฉันกำลังทำอยู่ไม่แสดงตัวเลือกนั้น เพียงหัวเราะเบา ๆ ฉันลองใช้ตัวตรวจสอบพอร์ตระยะไกลผ่านเว็บจากเว็บไซต์ - และผลลัพธ์นั้นถูกต้องสำหรับทั้งเซิร์ฟเวอร์ "ปัญหา" และเซิร์ฟเวอร์ที่ถูกต้อง อย่างไรก็ตามฉันไม่สามารถใช้มันในการทำงานแบบแบตช์ด้วย IP ของเซิร์ฟเวอร์ 500+ ในนั้น มีสิ่งที่ฉันสามารถทำได้ง่ายหรือไม่ ทักษะ Perl ของฉันเป็นสนิมอย่างมาก (ใช้หรือสูญเสีย) ไม่ทราบภาษาอื่น ๆ ที่ใช้ Windows ยกเว้นชุดงาน …
158 windows  batch-file  tcp  cmd 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.