เรียกใช้งานที่กำหนดเวลาไว้เมื่อเชื่อมต่อดิสก์ไดรฟ์


0

ฉันมีสภาพแวดล้อมเสมือน Windows 10 นี้ซึ่งบ่อยครั้งที่ฉันต้องแนบปริมาณดิสก์ดิบกับเครื่องเสมือนจากนั้นฉันต้องเรียกใช้ diskpart บนมันเพื่อเริ่มต้นมัน ฉันคิดว่าฉันต้องการ Window Task Scheduler เพื่อทำงาน ดังนั้นนี่คือขั้นตอน:

  1. ไดรฟ์ข้อมูลถูกแนบโดยเครื่องมือการจัดการ VM
  2. งานที่กำหนดเวลาไว้พบว่ามีการเชื่อมต่อไดรฟ์ข้อมูลจากนั้นเรียกใช้สคริปต์ diskpart

diskpart ส่วนนั้นง่าย แต่จะทราบได้อย่างไรว่ามีการต่อเชื่อมวอลลุ่ม? ฉันคิดว่ามันเกี่ยวข้องกับการใช้เหตุการณ์ของระบบเป็นตัวกระตุ้นภารกิจ แต่ฉันควรตรวจสอบเหตุการณ์ใดบ้าง

ลอจิก Diskpart

select disk 1
attribute disk clear readonly
online disk
convert mbr
create part primary
format quick
assign letter d:
exit

อะไร diskpart คำสั่งที่คุณใช้เพื่อติดตั้ง ฯลฯ ?
Pimp Juice IT

@JUICED_IT บางอย่างเช่นนี้: gist.github.com/gastlygem/f78cb5422ebfaf46934d2e1aa8350c63
Wang Dingwei

Diskpart ไม่ได้ฟังดูเหมือนเป็นเครื่องมือที่ปลอดภัยมากที่จะทำให้เป็นอัตโนมัติ บางทีคุณควรเรียกใช้เป็นสคริปต์โดยใช้ diskpart's /s ธง. ( เอกสาร )
Moshe Katz

@MosheKatz นั่นคือสิ่งที่ฉันทำอยู่ตอนนี้
Wang Dingwei

คำตอบ:


1

diskpart ส่วนนั้นง่าย แต่ฉันจะทราบได้อย่างไรว่าไดรฟ์ข้อมูลเป็น   ที่แนบมา?

DiskPart Logic ของคุณ

select disk 1
attribute disk clear readonly
online disk
convert mbr
create part primary
format quick
assign letter d:
exit

คุณสามารถยืนยันได้อย่างง่ายดายว่ามีปริมาณหรือไม่โดยใช้ตรรกะสคริปต์แบทช์เป็น ECHO ตัวอย่างคำสั่งด้านล่าง):

  • IF EXIST D:\ ECHO SUCCESS, หรือ

  • IF NOT EXIST D:\ ECHO UNSUCCESSFUL.

ขึ้นอยู่กับความต้องการของคุณให้ปรับตรรกะของคุณตามหลังจากนั้นโดยยืนยันว่ามีพาร์ทิชันดิสก์ไดรฟ์ "D" อยู่หรือไม่เนื่องจากคุณกำหนดอักษรระบุไดรฟ์ "D" ผ่านทาง diskpart

ตัวอย่างทั่วไป:

  1. IF [NOT] EXIST D:\ <SOME LOGIC BASED ON IF LOGIC RESULT>

ดังนั้นจึงต้องตรวจสอบก่อนจากนั้นจึงเรียกใช้ diskpart

สคริปต์ด้านล่างเพื่อตรวจสอบทุก ๆ 30 วินาทีสำหรับไดรฟ์ "D" และเรียกใช้ตรรกะเท่านั้นและสิ้นสุดเมื่อพบ

@ECHO ON

:Exist_Or_Not
PING -n 30 127.0.0.1 > nil
IF NOT EXIST D:\ GOTO :Exist_Or_Not
IF EXIST D:\ GOTO :Your_DiskPart_Logic

:Your_DiskPart_Logic
select disk 1
attribute disk clear readonly
online disk
convert mbr
create part primary
format quick
assign letter d:
exit

แหล่งข้อมูลเพิ่มเติม


บางทีฉันไม่ได้ทำให้ชัดเจน ฉันต้องตรวจสอบระดับเสียงก่อนจากนั้นจึงสั่งงาน diskpart
Wang Dingwei

@ WangDingwei โอเคสิ่งที่ฉันมีอยู่ข้างต้นควรจะใช้งานได้แล้วเช่นใช้ IF หรือ IF ก็ได้แล้วขึ้นอยู่กับผลลัพธ์เหล่านั้น ในคำอื่น ๆ ที่คุณเรียกใช้ IF NOT EXIST "D:\" <THEN DO SOMETHING WHEN THIS IS THE CASE TO MAKE IF RIGHT THEN> มิฉะนั้นเรียกใช้ IF EXIST "D:\" <THEN I'M HAPPY SO DO THE HAPPY LOGIC>. คุณไม่ได้ขอวิทยาศาสตร์จรวดที่นี่ดังนั้นตัดสินใจฉันจะต้องรู้ว่ามันมีหรือไม่และจากนั้นขึ้นอยู่กับลอจิกของฉันของกระบวนการนี้ทำในสิ่งที่ ... มันชัดเจนและจะทำงานหรืออื่นบอก ฉันทุกอย่างเพื่อให้ชัดเจนยิ่งขึ้นว่าคุณไม่ได้เปิดเผย
Pimp Juice IT

@ WangDingwei ขึ้นอยู่กับความต้องการเฉพาะของคุณใช้ IF หรือ IF ไม่ใช่เงื่อนไขตามตรรกะสำหรับความต้องการของคุณ มันไม่สำคัญว่าคุณจะใช้ตรรกะก่อนหรือหลังคำสั่ง diskpart; คุณควรจะได้รับสิ่งนี้เพื่อทำงานกับทุกสิ่งที่คุณอธิบายและความคิดเห็นของคุณเกี่ยวกับคำตอบนี้
Pimp Juice IT

ตรรกะของคุณใช้งานได้ก็ต่อเมื่อไดรฟ์ข้อมูลนั้นได้แนบไว้แล้ว แต่ในกรณีของฉันระบบปฏิบัติการเกสต์จะไม่ทราบว่าจะแนบโวลุ่มเมื่อใด ดังนั้นจึงต้องตรวจสอบก่อนจากนั้นจึงเรียกใช้ diskpart
Wang Dingwei

@ WangDingwei ฉันเพิ่งเพิ่มตรรกะด้านบนไปยังด้านล่างของคำตอบของฉันเพื่อดูแลปัญหานั้น ขออภัยสำหรับการตอบกลับที่ล่าช้าเพียงสังเกตเห็นความคิดเห็นด้านบน ไม่แน่ใจว่าฉันคิดถึงมันอย่างไร
Pimp Juice IT
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.