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

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

5
Ping ทุกที่อยู่ IP ในไฟล์ข้อความหรือไม่
สมมติว่าฉันมีไฟล์ข้อความพร้อมชื่อคอมพิวเตอร์บางอัน (แต่ละบรรทัด == 1 ชื่อ): computerA computerB computerC ... เป็นไปได้หรือไม่ที่จะสร้างแบตช์ไฟล์ที่ส่ง Ping ไปยังคอมพิวเตอร์เหล่านี้ทั้งหมด? และที่จริงแล้ว ping นั้นเป็นผลลัพธ์ที่ยิ่งใหญ่ ฉันไม่ต้องการtimeหรือข้อมูลอื่น ๆ ; ฉันแค่อยากจะรู้ว่าสามารถเข้าถึงได้หรือไม่ ความคิดใด ๆ มันใช้งานได้แล้วตอนนี้! ปัญหาเป็นเหมือนสุนัขจิ้งจอกพูดว่าฉันตั้งชื่อไฟล์ชุดของฉันเป็นping.batและ ping ก็เป็นคำสั่งดังนั้นสิ่งนี้ก็ไม่ได้ผล ฉันเปลี่ยนชื่อแบทช์ไฟล์และตอนนี้ทุกอย่างเรียบร้อย

2
เชื่อมต่อ VPN โดยใช้บรรทัดคำสั่งทำให้เกิดข้อผิดพลาด 691
ฉันเขียนไฟล์แบตช์ง่าย ๆ เพื่อเชื่อมต่อกับการเชื่อมต่อ VPN เฉพาะโดยใช้RASDIAL rasdial MyVPNConnection แต่มันกลับข้อผิดพลาดเสมอ 691 การเข้าถึงถูกปฏิเสธเนื่องจากชื่อผู้ใช้และ / หรือรหัสผ่านไม่ถูกต้องในโดเมน รายการรหัสข้อผิดพลาดของบริการการเข้าถึงระยะไกล (RAS) จากนั้นฉันลองชี้ไปที่สมุดโทรศัพท์การเข้าถึงระยะไกล (Rasphone.pbk)และดูว่าเกิดอะไรขึ้น rasdial MyVPNConnection /phonebook:%userprofile%\AppData\Roaming\Microsoft\Network\Connections\Pbk\rasphone.pbk และยังมีข้อผิดพลาด 691 ฉันไม่ได้ทำเครื่องหมายต่อไปนี้ แต่ก็ยังคงมีรายงานปัญหาเดียวกันเมื่อเรียกใช้แบตช์ไฟล์ของฉัน

4
วิธีลงชื่อไฟล์แบตช์ (.bat) ของ Windows
ฉันใช้ Windows 7 และเมื่อฉันพยายามเรียกใช้แบตช์ไฟล์จะมีข้อความว่า "ผู้เผยแพร่ไม่สามารถตรวจสอบได้คุณแน่ใจหรือไม่ว่าคุณต้องการใช้งานซอฟต์แวร์นี้" ดังนั้นเมื่อฉันพยายามเซ็นชื่อด้วยใบรับรองการเซ็นชื่อรหัสของฉันมันบอกว่า "SignTool Error: รูปแบบไฟล์นี้ไม่สามารถเซ็นเพราะไม่รู้จัก" ดังนั้นฉันจึงติดอยู่ระหว่างหินและสถานที่ที่ยากลำบาก มีวิธีกำจัดข้อความใดข้อความหนึ่งหรือไม่?

1
รับไฟล์แบตช์เพื่อเรียกใช้เทียบกับโฟลเดอร์จริงไม่ใช่ทางลัด
ฉันได้สร้างแบตช์ไฟล์สองสามไฟล์ที่มีการย้ายไฟล์โดยสัมพันธ์กับโฟลเดอร์ที่มีไฟล์แบตช์อยู่ ฉันได้เพิ่มโฟลเดอร์ในแถบงานของฉันโดยใช้แถบเครื่องมือ => แถบเครื่องมือใหม่ ... แต่ตอนนี้เมื่อฉันเรียกใช้ไฟล์แบตช์ตำแหน่งเริ่มต้นคือเอกสารของฉัน (U :) ไม่ใช่ตำแหน่งจริงของไฟล์แบตช์ มีวิธีใดบ้างที่ฉันสามารถใช้เส้นทางจริงได้?

2
รับเอาต์พุตของคำสั่ง CMD และตั้งค่าเป็นตัวแปรแบตช์
ฉันรันคำสั่งนี้เพื่อรับชื่อกลุ่ม: set "remotegroup=" for /f "skip=1delims=" %%a in ( '"wmic group where sid="S-1-5-32-555" get name"' ) do if not defined remotegroup set "remotegroup=%%a" แต่เมื่อฉันทำสิ่งนี้ echo "%rdpgroup%"ผลลัพธ์จะเป็นดังนี้: "Remote Desktop Users " ฉันไม่ต้องการช่องว่างเหล่านี้ในตอนท้ายของผู้ใช้ แค่ต้องการผลลัพธ์เช่นนี้"Remote Desktop Users"

1
ลบรีจิสตรีคีย์โดยใช้ reg.exe ในแบตช์สคริปต์
ฉันได้เขียนสคริปต์ชุดเล็ก ๆ นี้เพื่อช่วยให้ฉันทำความสะอาดรีจิสตรีอัตโนมัติของรีจิสตรีคีย์ที่เฉพาะเจาะจงมากกว่า 300+ เครื่อง มันทำงานได้จนถึงจุดที่ผ่านตัวแปรสำคัญไปยังคำสั่ง "reg delete% 1" @echo off C: cd C:\Program Files\McAfee\Common Framework\ framepkg.exe remove=agent /silent setlocal for /F %%c in ('REG QUERY HKLM\SOFTWARE /s^|FIND "HKEY_"^|findstr /L /I /C:"mcafee"') do call :delete %%c endlocal goto :EOF :delete reg delete /f %1 pause ความช่วยเหลือในการแก้ไขข้อบกพร่องใด ๆ และทั้งหมดจะได้รับการชื่นชมอย่างมาก!

1
ไฟล์แบตช์ Windows อ้างอิงไปยังไดเรกทอรีของตัวเอง
สมมติว่าคุณมีซึ่งความต้องการในการอ้างถึงC:\foo\foo.bat C:\foo\foo.txtอาจถูกเรียกใช้จากไดเรกทอรีอื่น แต่ต้องได้รับfoo.txtจากไดเรกทอรีของตัวเองไม่ใช่ไดเรกทอรีปัจจุบัน เห็นได้ชัดว่านี้สามารถทำได้โดยการวางเส้นทางแบบเต็มในC:\foo\foo.txtfoo.bat การบิดคือไม่ทราบเวลาเขียนแบทช์ไฟล์ซึ่งมันจะอยู่ในเครื่องของผู้ใช้ดังนั้นไฟล์แบทช์ที่ต้องทำคือรับ foo.txt จากไดเรกทอรีที่ฉันอาศัยอยู่ที่ไหนก็ตาม ที่จะเกิดขึ้น (ในโปรแกรม C ที่ฉันใช้argv[0]แต่ดูเหมือนจะไม่ทำงานกับแบตช์ไฟล์) มีวิธีทำเช่นนี้หรือไม่?

1
Batch File ที่คัดลอก 2 บรรทัดแรกของไฟล์ข้อความไปยังไฟล์ข้อความอื่น
ฉันมีไฟล์ข้อความ A.txt Pinging [xx.xx.xx.xx] with 32 bytes of data: Request timed out. Ping statistics for xx.xx.xx.xx: Packets: Sent = 1, Received = 0, Lost = 1 (100% loss) ฉันต้องการคัดลอก 2 บรรทัดแรกของไฟล์นี้ไปยังไฟล์ B.txt อื่นเช่น Pinging [xx.xx.xx.xx] with 32 bytes of data: Request timed out. ฉันรู้ว่าฉันสามารถใช้ FOR / F เพื่อวนซ้ำบรรทัดต่างๆในไฟล์ได้ ฉันรู้วิธีที่จะข้ามสองบรรทัดแรก แต่ไม่เพียงอ่านพวกเขาเท่านั้น …

1
เล่นภาพยนตร์ / ตอนสุ่มภายในโฟลเดอร์จากเมนูตามบริบท
เป้าหมาย ฉันมีคอลเลกชันสื่อที่ค่อนข้างกว้างจัดเก็บไว้ในเครื่องของฉันภายในสองโฟลเดอร์หลัก ("ภาพยนตร์" และ "รายการ") เป้าหมายของฉันคือสามารถเล่นสุ่มภาพยนตร์หรือตอนใดก็ได้ที่ฉันมีในโฟลเดอร์เหล่านี้โดยคลิกขวาที่โฟลเดอร์หลักและเลือกรายการ "เล่นภาพยนตร์ / ตอนสุ่ม" จากเมนูบริบทแบบขยาย สคริปต์ชุด ฉันมีสคริปต์ชุดต่อไปเก็บไว้ในโฟลเดอร์บน Windows 7 เครื่องของเราซึ่งเราเอามาจากที่นี่และปรับตัวที่จะมองหา.mp4, .mkvและ.aviไฟล์ (ส่วนขยายทั้งหมดของคอลเลกชันที่สื่อของฉันประกอบด้วย): @echo off setlocal :: Create numbered list of files in a temporary file set "tempFile=%temp%\%~nx0_fileList_%time::=.%.txt" dir *.mp4,*.mkv,*.avi /b /s /a-d %1 | findstr /n "^" >"%tempFile%" & REM " :: Count the files …

2
นโยบายกลุ่มบน windows จะกำหนดให้ไฟล์ที่ซ่อนอยู่มองไม่เห็นเมื่อเริ่มต้น
ฉันเป็นนักเรียนและคอมพิวเตอร์ที่โรงเรียนได้รับการกำหนดค่าผ่านนโยบายกลุ่มเพื่อตั้งค่าไฟล์ที่ซ่อนเป็นซ่อน ฉันสามารถยกเลิกได้โดยเปลี่ยนสิ่งเหล่านี้ด้วยตนเองในเมนูอย่างไรก็ตามสิ่งนี้น่าผิดหวังจริง ๆ หลังจากเวลาที่ 1,000 (เพื่อพูด) มีโปรแกรมหรือใครบางคนรู้จักไฟล์แบทช์ที่สามารถทำสิ่งนี้ให้ฉันได้ด้วยการคลิกเพียงครั้งเดียว?

1
เล่นไฟล์. bat ใน zsh (ใน Windows)
บนเครื่อง Windows ฉันต้องการหลีกเลี่ยงการใช้cmd.exeงานทั้งหมด ฉันพยายามใช้ babun (mintty 1.1.3) เพื่อเรียกใช้ไฟล์แบตช์ในโฟลเดอร์ Windows งานนี้: { ~ } » ./file.bat -o /path/to/files.xml อย่างไรก็ตามฉันต้องการทำสิ่งที่ชอบ: { ~ } » cd /path/to/ { ~ } » ./"c:\Program Files\App\file.bat" -o files.xml อย่างไรก็ตามสิ่งที่ฉันได้รับคือ zsh: no such file or directory: ฉันลองshแล้วcmd /cและคำสั่งอื่น ๆ ที่ฉันพบว่าไม่มีประโยชน์ ฉันได้ลองใช้รูปแบบพา ธ ที่เป็นมิตรกับ linux มากกว่าเช่นc:/Program\ Files/App/file.bat ฉันจะขอบคุณสำหรับความช่วยเหลือใด …

1
ฉันจะสร้างผู้ใช้เป็นกลุ่มสำหรับเซิร์ฟเวอร์ Filezilla FTP ได้อย่างไร?
ฉันเพิ่งสืบทอดเซิร์ฟเวอร์ FTP สองเครื่อง ทั้งสองระบบใช้งาน Filezilla Server หนึ่งมีฐานผู้ใช้ขนาดเล็กดังนั้นการสร้างผู้ใช้เป็นงานเล็ก ๆ อีกรายการหนึ่งมีขนาดใหญ่มากและต้องมีผู้ใช้มากกว่า 300 ราย ฉันคาดว่าอาจมีผู้ใช้หลายร้อยคนเพิ่มทุกปีดังนั้นการสร้างบัญชีด้วยตนเองอาจเป็นเรื่องที่เจ็บปวด มีตัวเลือกใดบ้างในการสร้างบัญชีผู้ใช้สคริปต์?


1
วิธีทำให้ ConEmu แนบเมื่อเริ่มต้น
ฉันมีไฟล์. bat ที่มีอยู่ซึ่งใช้startคำสั่งเพื่อเปิดใช้งานหลายงานเช่น: start cmd.exe /k "echo task 1" start cmd.exe /k "echo task 2" start cmd.exe /k "echo task 3" สิ่งที่เกิดขึ้นคือ ConEmu เชื่อมต่อcmd.exeกับ.batไฟล์ที่เรียกใช้เท่านั้นส่วนcmd.exeอินสแตนซ์อื่น ๆ จะเริ่มต้นเป็น Windows แบบสแตนด์อะโลน: ฉันต้องการให้started ed แบบสแตนด์อโลนติดกับ ConEmu ฉันทราบว่าฉันสามารถทำได้โดยการแก้ไขสคริปต์ชุดงาน แต่ฉันไม่ต้องการทำเช่นนั้นเพราะสคริปต์นั้นใช้งานร่วมกับผู้อื่นที่ไม่จำเป็นต้องใช้ ConEmu

3
ไฟล์ Windows XP xcopy ที่มีนามสกุลเป็นแบบวนซ้ำ
ฉันมีสคริปต์บรรทัดเดียวที่คัดลอกไฟล์ ".ext1" ทั้งหมดจากโฟลเดอร์ปัจจุบันไปยังโฟลเดอร์ปลายทางซ้ำ: xcopy *.ext1 D:\dest /s /d /y มันทำงานได้อย่างสมบูรณ์ ตอนนี้ฉันต้องการคัดลอก * .ext2 ทั้งหมดด้วย แทนที่จะคัดลอกวาง (ใช้งานได้ดี): xcopy *.ext1 D:\dest /s /d /y xcopy *.ext2 D:\dest /s /d /y ฉันต้องการใช้forคำสั่ง: for %%f in (*.ext1 *.ext2) do xcopy %%f D:\dest /s /d /y แต่มันไม่ทำงาน: มันไม่ได้คัดลอกส่วนย่อยของโฟลเดอร์ต้นทาง มันไม่ได้คัดลอกไฟล์ที่มีชื่อที่มีช่องว่างเช่น "read me.ext1" ฉันพยายามใช้/Rรหัส: for /R %%f …

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