我刚刚用WinPE 3.0设置了一个可启动的UFD,我需要它在启动时自动运行几个脚本。
我想知道是否有人建议设置自动脚本以列出本地驱动器上的分区,显示系统日期,列出当前IP以及捕获本地驱动器的映像。
如果有人能提供帮助那就太棒了!感谢。
答案 0 :(得分:1)
在将脚本放入WinPE之前,独立构建脚本并测试其功能。然后安装winPE,以便编辑它并将所有脚本放在winPE中
挂载命令:
DISM / Mount-WIM /WimFile:C:.. [你的酒位于哪里] \ ISO \ sources \ boot.wim / index:1 / MountDir:mount
然后将脚本放在mount文件夹中的一个文件夹中(现在应该在其中包含内容)。完成后,您可以通过修改..\Windows\System32\startnet.cmd
文件轻松调用它们。
注意:不要删除第一行wpeinit
。只需在其后添加:start <scriptname.bat or .vbs>
保存并关闭。
请记住:如果您在winPE中执行使用NIC处理任何内容的脚本,则需要将网络驱动程序插入到WinPE中。加载完winpe后,它会先自动调用startnet.cmd
。
有些教程可以找到here。
答案 1 :(得分:0)
我在可启动的WinPE映像中添加了一个批处理文件,该映像执行许多这些任务。它首先检查以确保您实际运行WinPE(而不是从另一个操作系统运行批处理文件)。
set pVersion=WinPE not found
for /F "usebackq tokens=3" %%A IN (`reg query "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\WinPE" /v "Version" 2^>nul ^| find "Version"`) do (
set pVersion=%%A
)
echo WinPE Version: %pVersion%
IF /I "%pVersion%"=="3.0" GOTO ContinueProc
IF /I "%pVersion%"=="4.0" GOTO ContinueProc
echo *************************************************************************
echo ** ERROR: This restore batch file can only be used in WinPE version **
echo ** 3.0 and 4.0 **
echo *************************************************************************
GOTO ExitInstall
然后我通过...
向用户列出磁盘0的磁盘,卷和分区信息diskpart /s list.txt
... list.txt包含...
list disk
list volume
select disk 0
list partition
exit
然后我的批处理文件将清理磁盘0,格式化驱动器并应用磁盘映像。我使用imagex来捕获和应用图像。在您的情况下,您声明要捕获磁盘映像,您可以对网络驱动器,另一个硬盘驱动器,USB硬盘驱动器或UFD执行此操作。
例如
imagex /capture c: y:\mydiskimage.wim "My system disk"
要列出IP,您只需运行ipconfig。
如果希望您的批处理文件在启动时自动运行,您可以尝试编辑/创建winpeshl.ini,如果添加到Windows \ System32文件夹,则会启动自定义进程。
我确保我有startnet.cmd,然后列出我想要运行的内容。我添加了setlw.exe(在线搜索)以确保我的UFD始终是驱动器号Y.然后您可以将批处理文件作为最后一项运行。在此示例中,我还添加了cmd,以便用户在完成所有操作后获取命令提示符。
[LaunchApps]
%SYSTEMDRIVE%\Windows\system32\startnet.cmd
%SYSTEMDRIVE%\Windows\system32\setlw.exe
Y:\sources\mybatchfile.cmd
%SYSTEMDRIVE%\Windows\system32\cmd.exe
注意:我的批处理文件启动的第一个命令之一:
chdir /D %~dp0
...将目录更改为批处理文件的位置。