원래 Stack Overflow에 게시했지만이 질문을 게시하기에 더 좋은 장소라고 할 수 있습니다.
컴퓨터를 자동으로 재부팅 할 작은 스크립트를 생성했습니다 (Windows 복구 환경). 여기 내 코드가 있습니다 :
$testpath = test-path "bcdedit.txt"
if ($testpath -eq $true){
Remove-item "bcdedit.txt"
}
bcdedit | Out-File "bcdedit.txt"
foreach($line in Get-Content .\bcdedit.txt) {
if($line -match $regex){
if($line -like 'recoverysequence*') {
$variable = "{" + $line.Split('{')[-1]
}
}
}
bcdedit /bootsequence $variable
Remove-item "bcdedit.txt"
shutdown /r /t 1
이 Powershell 스크립트는 내 Electron (Node.js 기반 프레임 워크) 응용 프로그램에서 실행됩니다. 이 응용 프로그램은 하루에 수백 가지 컴퓨터 모델에서 실행되며 하드웨어 정보를 수집하고 데이터베이스와 비교하여 프로덕션 환경에서 장치의 UPC를 검색합니다.
그러나 나는 정말로하고 싶은 것을 할 수있는 방법을 찾아 내지 못하기 때문에이 기능을 가지고있다. 나는이 스크립트가 실제로 컴퓨터를 재부팅하기를 원했다. USB 드라이브의 .EFI 파일로 부팅 . Windows 복구 환경으로 재부팅하는 것은 USB 플래시 드라이브로 부팅하기위한 버튼을 제공하기 때문에 구현 한 해결 방법이었습니다. 나는이 단계를 제거하고 USB 플래시 드라이브로 바로 부팅하기를 원하기 때문에 여기에 게시하고 있습니다. 프로그램을 실행중인 USB 플래시 드라이브에는 부팅 가능한 .EFI 파일도 포함됩니다.
이제 질문은 : 컴퓨터를 재부팅하고 USB 플래시 드라이브에서 부팅하는 코드 (PowerShell, Electron 또는 Node.js)를 작성하려면 어떻게해야합니까?
이 작업을 수행하는 방법을 살펴 보았습니다. bcdedit
, 그리고 아무것도 찾을 수없는, 나는 정말로 내가 필요로하는 것을 찾으려고 노력하는 다른 수색 기간을 모른다, 나는 여기에서 손실에있다.