Windows
如何使用 PowerShell 創建 EFI 分區?
我想自動化創建 EFI 分區的腳本。
目前,一步是手動的,需要啟動 DISKPART 並執行以下命令:
create partition efi size=100 format fs=fat32 quick label=SYSTEM assign letter=S
如何使用 PowerShell 獲得相同的結果?我在 New-Partition cmdlet 中沒有看到任何用於創建 EFI 分區的選項。
我懷疑這在PowerShell中是等價的:
New-Partition -DiskNumber 0 -Size 100MB -GptType "{c12a7328-f81f-11d2-ba4b-00a0c93ec93b}" -DriveLetter "S" Format-Volume -FileSystem FAT32 -NewFileSystemLabel "SYSTEM" -DriveLetter "S" -Force
根據您的案例進行適當修改。
請注意,您需要先選擇磁碟,然後才能創建分區。
閱讀
diskpart /?
,使用:Microsoft DiskPart syntax: diskpart [/s <script>] [/?] /s <script> - Use a DiskPart script. /? - Show this help screen.
請注意,DiskPart 腳本是簡單的純文字文件,其中放置了 diskpart 命令(每行一個命令),例如
MyDiskpart.txt
下面列出的。diskpart /s MyDiskpart.txt
答:您可以從提升的
powershell
會話以及 提升的會話中執行後一個命令cmd
(˙diskpart˙ 始終需要提升)。附錄:
此外,
Diskpart
接受來自管道 (’|’) 以及來自<
重定向的輸入,因此以下cmd
命令是等效的:diskpart /s MyDiskpart.txt diskpart<MyDiskpart.txt type MyDiskpart.txt|diskpart
後面的命令使用以下diskpart 腳本進行了測試:
==> type MyDiskpart.txt list disk list volume select disk 1 list partition
此外,您無需創建diskpart 腳本文件;以下
.bat
腳本顯示系統卷詳細資訊(動態選擇卷#):@ECHO OFF SETLOCAL EnableExtensions :check_permissions echo Administrative permissions required. Detecting permissions... net session >nul 2>&1 if %errorLevel% == 0 ( echo Success: Administrative permissions confirmed. ) else ( echo Failure: Current permissions inadequate. goto :endlocal ) :do_the_job for /f "tokens=2" %%a in ('echo list volume ^| diskpart ^| findstr System') do ( ( echo select volume %%a echo detail volume ) | diskpart ) echo DONE :endlocal pause