a1ive@github

闷声大发财

命令列表

[ EXPRESSION ]

​ 同 “test”

acpi [OPTIONS] FILE1 [FILE2 …]

​ 加载 ACPI 表

​ 现代 BIOS 系统通常实现了 ACPI,并定义各种表来描述符合 ACPI 的操作系统和固件之间的接口。 在某些情况下,默认情况下提供的表仅适用于某些操作系统,并且可能有必要替换其中的某些表。

​ 通常,此命令将替换扩展 BIOS 数据区域中的根系统描述指针(RSDP),以指向新表。 如果使用–no-ebda选项,则仅有 GRUB 获取新表,但 GRUB 的 EFI 仿真可以使用新表。

alias NAME COMMAND [SUMMARY]

​ 设置别名

appleloader CMDLINE

​ Apple legacy boot loader.

authenticate [userlist]

​ 检查用户是否在用户列表中或是否在变量 “superusers” 的值中列出

​ 如果“超级用户”为空,则此命令返回 true。

background_color COLOR

​ 设置活动终端的背景颜色

​ 只有使用 “gfxterm” 时才能更改背景颜色。此命令设置没有文本的空白区域的颜色,文本背景颜色由环境变量color_normal, color_highlight, menu_color_normal, menu_color_highlight控制。

background_image [OPTIONS] [FILE]

​ 为激活的终端设置背景图片

​ 默认情况下图像会被拉伸以填满整个屏幕 (–mode=stretch)

​ 若不带参数,则删除当前加载的背景图像。

backtrace

​ 打印回溯信息

badram ADDR1,MASK1[,ADDR2,MASK2[,…]]

​ 屏蔽错误的内存

​ 此命令通知内存管理器应过滤掉 RAM 的指定区域。只要加载的内核从 GRUB 获取其内存映射,加载内核之后仍然有效。支持此功能的内核通常包括 Linux, GNU Mach, FreeBSD 内核和 Multiboot 内核。

​ 语法与 Memtest86+ 提供的语法相同:地址/掩码对的列表。 给定一个页面对齐地址和一个基地址/掩码对,如果掩码启用的页面对齐地址的所有位都与基地址匹配,则意味着该页面将被过滤。

blocklist [OPTIONS] FILE

​ 打印文件的块列表

blscfg FILE

​ 导入 BootLoaderSpec (BLS) 配置

bls_import FILE

​ 同 “blscfg”

boot

​ 启动已加载的操作系统

btrfs-info DEVICE

​ 显示设备的 btrfs 分区信息

btrfs-mount-subvol DEVICE DIRECTORY SUBVOL

​ 设置 btrfs 设备 DIRECTORY 目录为子卷 SUBVOL 的挂载点

btrfs-list-subvols [OPTIONS] DEVICE

​ 显示设备 DEVICE 上所有子卷

btrfs-get-default-subvol [OPTIONS] DEVICE

​ 显示设备 DEVICE 上的默认子卷

cat [OPTIONS] FILE

​ 显示文本文件内容

chainloader [–force|–bpb] FILE [ADDR]

​ 启动另一 bootloader,默认加载地址为 0x7c00

chainloader [OPTIONS] FILE CMDLINE

​ 启动 EFI 可执行文件

警告:使用此命令可能会导致安全方面的问题

checktime minute hour day month day_of_week

​ 检查当前时间是否满足要求,是则返回0,否则返回1。语法与 unix 下的 cron 类似。

符号 意义 示例
\* 任意值 (注意星号转义) \*
, 列举多个值 10,20,30
- 范围值 5-45
/ 步进值 10/5

clear

​ 清屏

​ 注意:使用本命令前需要 unset debug

clear_menu

​ 清空当前菜单

警告:使用本命令前请务必禁用ESC export grub_disable_esc=1

cmosclean byte:bit

​ 清除 CMOS 位于 byte:bit 的位的值

​ 仅在支持 CMOS 的平台上可用。

cmosdump

​ 显示 CMOS 原始数据

cmostest byte:bit

​ 测试 CMOS 位于 byte:bit 的值

​ 若该位置1,则返回 true (0),否则为非零。

cmp FILE1 FILE2

​ 比较两文件

​ 若两文件大小不同,则分别显示大小。若大小相同但数据不同,则显示第一处不同的位置及数据。若完全相同,则无输出。返回值为 0,则表示文件相同,否则文件不同。

commandline

​ 进入 GRUB 命令行

configfile FILE

​ 加载 GRUB2 配置文件

crc32 FILE [VARIABLE]

​ 计算文件的 CRC32 校验码

cpuid [OPTIONS] | EAX EAX_VAR EBX_VAR ECX_VAR EDX_VAR

​ 检测 CPU 特性

​ 若不加参数,则默认参数为 -l。若 CPU 支持该特性,则返回 0。

cputemp [VARIABLE]

​ 读取 CPU 温度 (仅支持部分 Intel CPU)

cryptomount DEVICE | -u UUID | -a | -b

​ 挂载加密设备 (支持 LUKS/geli),某些情况下需要交互输入密码

cutmem FROM[K|M|G] TO[K|M|G]

​ 删除指定范围内的所有内存区域

date [OPTIONS] [[year-]month-day] [hour:minute[:second]]

​ 显示/设置当前时间

decrement VARIABLE

​ 使变量的值减一

devicetree FILE

​ 加载 device tree blob (.dtb)

dd OPTIONS

​ 将文件/字符串/十六进制数写入文件

警告:使用此命令会造成数据损失

distrust PUBKEY_ID

​ 将 PUBKEY_ID 从信任列表中删除

dp FILE/DEVICE

​ 输出设备或文件的 UEFI Device Path

drivemap [OPTIONS] FROM_DEVICE TO_DEVICE

​ 交换 BIOS 磁盘顺序

dump ADDR [SIZE]

​ 显示内存内容

echo [OPTIONS] STRING …

​ 显示字符串

​ 若不加 -n 选项,则会自动换行。反斜杠转义支持以下序列:

​ \\ – 反斜杠 \a – 报警(BEL) \c – 禁止尾随换行 \f – 换页

​ \n – 换行 \r – 回车 \t – 水平制表符 \v – 垂直制表符

​ \e0xBF -- 设置字符颜色

efi-export-env VARIABLE

​ 将 GRUB 变量保存到 EFI 环境变量 GRUB_ENV 中

警告:使用此命令会修改 UEFI 环境变量

efi-load-env

​ 从 EFI 环境变量 GRUB_ENV 中读取变量

efiload [OPTIONS] FILE

​ 加载 UEFI 驱动

efiusb DEVICE

​ 打印 USB 信息

eval STRING …

​ 将参数用单个空格作为分隔符连接在一起,并将结果作为 GRUB 命令序列执行。

exit

​ 退出 GRUB

export VARIABLE[=VALUE]

​ 将变量设置为全局环境变量

expr [OPTIONS] EXPRESSION

​ 计算数学表达式,支持 + - * \ % 运算符

警告:除以零会导致死机或重启等意外情况

fakebios

​ 创建类似 Legacy-BIOS 的结构以兼容现有系统

false

​ 返回假 (false)

file OPTIONS FILE

​ 检测文件类型

fixmmap

​ 修复部分电脑上启动 Windows 时出现的 “BlInitializeLibrary failed 0xc000009a” 错误

fix_video

​ 修复图像显示问题

fucksb [OPTIONS]

​ 在 bootloader 阶段隐藏固件安全启动状态。若无参数,则返回是否启用此功能,启用则返回 1。

fwsetup

​ 重启进入 UEFI 固件设置

getargs OPTIONS STRING VARIABLE

​ 从 GRUB 2 EFI 文件接收到的命令行获取参数

​ 若命令执行成功(参数/值存在),则返回 0。

getenv [OPTIONS] EFI_ENV VARIABLE

​ 获取 UEFI 环境变量

getkey [-n] [VARIABLE]

​ 等待按键并输出键盘扫描码

gettext STRING

​ 将字符串翻译成当前语言

​ 当前的语言代码存储在 GRUB 环境中的”lang”变量中。 MO格式的翻译文件是从“ locale_dir”中读取的,通常是/boot/grub/locale。

gptprio.next OPTIONS [DEVICE]

​ 选择 GPT 磁盘要启动的下一分区

gptrepair DEVICE

​ 校验并修复设备的GPT分区表

警告:使用此命令有可能会造成数据损失

gptsync DEVICE [PARTITION[+/-[TYPE]]] …

​ 修改 GPT 分区表硬盘的 MBR 兼容分区表

​ TYPE 为 MBR 分区类型码。”+” 代表激活分区,”-“ 代表取消激活分区。

halt [–no-apm]

​ 关闭计算机

​ 若加 “--no-apm” 参数,则不执行 APM BIOS 调用。否则,将会使用 APM 关闭计算机。

hashsum -h HASH [OPTIONS] [-c FILE [-p PREFIX]] [FILE1 [FILE2 …]]

​ 计算或校验哈希值,若哈希校验成功,则返回 0。

hdparm [OPTIONS] DISK

​ 获取/设置 ATA 磁盘参数

help [PATTERN …]

​ 显示内置命令的帮助信息。如果未加参数,则显示所有可用命令。

hexdump [OPTIONS] FILE/DEVICE [VARIABLE]

​ 显示文件或设备的十六进制数据。(mem)为内存设备。

hiddenentry “TITLE” [OPTIONS] [arg …] { COMMAND; … }

​ 添加隐藏菜单,仅对 gfxmenu 有效

​ 参数同 “menuentry”

inb [OPTIONS] PORT

​ 从端口读取8比特数值

increment VARIABLE

​ 使变量的值加一

ini_get [OPTIONS] FILE [SECTION:]KEY

​ 从 ini 文件获取数据

initrd FILE …

​ 加载 Linux 初始内存盘,在 linux 之后使用

initrd16 FILE …

​ 加载 Linux 初始内存盘,在 linux16 之后使用

initrdefi FILE

​ 加载 Linux 初始内存盘,在 linuxefi 之后使用

inl [OPTIONS] PORT

​ 从端口读取32比特数值,参数同 “inb”

insmod MODULE

​ 加载 GRUB2 模块

inw [OPTIONS] PORT

​ 从端口读取16比特数值,参数同 “inb”

isotools OPTIONS FILE [VARIABLE]

​ ISO El Torito 相关工具

keymap FILE

​ 加载键盘布局

keystatus [OPTIONS]

​ 若 Shift/Ctrl/Alt 键按下,则返回 0

​ 只有部分平台支持检测修饰键状态,若不加任何参数,则此命令用于检测是否支持修饰健状态。

kfreebsd [OPTIONS] FILE [CMDLINE]

​ 加载 FreeBSD 内核

kfreebsd_loadenv FILE

加载 FreeBSD 环境变量

kfreebsd_module FILE [CMDLINE]

​ 加载 FreeBSD 模块

kfreebsd_module_elf FILE [CMDLINE]

​ 加载 FreeBSD 模块 (ELF)

knetbsd [OPTIONS] FILE [CMDLINE]

​ 加载 NetBSD 内核

knetbsd_module FILE [CMDLINE]

​ 加载 NetBSD 模块

knetbsd_module_elf FILE [CMDLINE]

​ 加载 NetBSD 模块 (ELF)

kopenbsd [OPTIONS] FILE [CMDLINE]

​ 加载 OpenBSD 内核

kopenbsd_ramdisk FILE

​ 加载 OpenBSD 内存盘

linuxefi FILE [CMDLINE]

​ 加载 Linux 内核

list_env [OPTIONS]

​ 列出环境块文件中的所有变量

list_trusted

​ 列出已信任密钥列表

load_env [OPTIONS] [VARIABLE …]

​ 从环境块文件加载变量,参数同 “list_env”

loadbios BIOS_DUMP [INT10_DUMP]

​ 加载 BIOS 转储

loadfile [OPTIONS] FILE

​ 将文件加载到内存

loopback [OPTIONS] DEVICE FILE

​ 将文件挂载为虚拟盘

ls [OPTIONS] [FILE …]

​ 列出设备或文件

​ 若无参数,则列出所有设备。如果参数是用括号括起来的设备名称,则打印该设备文件系统的名称。如果参数是作为绝对文件名指定的目录,则列出该目录的内容。

lsacpi [OPTIONS]

​ 显示 ACPI 信息

lspci [OPTIONS]

​ 列出 PCI 设备

lsefi

​ 显示 EFI 句柄

lsefienv

​ 列出所有 EFI 环境变量

lsefimmap

​ 显示 EFI 内存映射

lsefisystab

​ 显示 EFI 系统表

lua [OPTIONS] [FILE]

​ 执行 Lua 脚本

map [OPTIONS] FILE [DEVICE]

​ 创建 UEFI 虚拟盘

md5sum arg …

​ 即 “hashsum –hash md5 arg …”

​ 定义 GRUB 菜单项,菜单名称为 TITLE

​ 当菜单项被选中执行后,若指定 --id,则环境变量 chosen 的值会被设为 --id 的值。大括号里面的命令会被执行,若最后一条命令成功执行,且内核已被加载,会自动执行 boot 命令。

​ 包括 TITLE 在内的所有参数 (arg …) 都会做为位置参数传递,且 TITLE 会被分配给 $1。

​ 特殊热键:

nes FILE [PIXEL_SIZE WAIT_KEY_TIME]

​ NES 模拟器

normal [FILE]

​ 进入 normal 模式并显示 GRUB 菜单

​ 在 normal 模式下,命令,文件系统模块和加密模块将自动加载,并且可以使用完整的 GRUB 脚本解析器。 其他模块可以使用 insmod 显式地加载。

​ 如果给出了文件,则将从该文件读取命令。 否则,将从 $prefix/grub.cfg 中读取它们(如果存在)。

​ 可以从 normal 模式内再次调用 normal,从而创建嵌套环境。 为此,通常使用configfile。

normal_exit

​ 退出 normal 模式

​ 若此 normal 实例未嵌套在另一个实例中,则返回 rescue 模式。

ntboot [OPTIONS] FILE

​ 启动 NT6+ VHD/VHDX/WIM

nthibr FILE

​ 检测 NTFS 的 hiberfil.sys 是否处于休眠状态

ntversion (hdx,y) VARIABLE

​ 获取安装在磁盘分区 (hdx,y) 上的 Windows NT 的版本信息

outb PORT VALUE [MASK]

​ 向端口写入8比特数值

outl PORT VALUE [MASK]

​ 向端口写入32比特数值

outw PORT VALUE [MASK]

​ 向端口写入16比特数值

partnew OPTIONS DISK PARTNUM

​ 为 msdos 分区表的磁盘创建主分区

警告:使用此命令有可能会造成数据损失

parttool PARTITION COMMANDS

​ 修改分区表 (目前只支持 mbr 分区表)

警告:使用此命令有可能会造成数据损失

​ Each command is either a boolean option, in which case it must be followed with ‘+’ or ‘-’ (with no intervening space) to enable or disable that option, or else it takes a value in the form ‘command=value’.

可用选项:

password USER clear-password

​ Define a user named user with password clear-password.

password_pbkdf2 USER hashed-password

​ Define a user named user with password hash hashed-password. Use grub-mkpasswd-pbkdf2 to generate password hashes.

pcidump OPTIONS

​ 显示PCI配置空间的原始转储

play FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] …

​ 使用 PC Speaker 播放曲调

​ 若参数是文件,则播放文件记录的曲调。

pop_env VARIABLE …

​ 将子菜单中的变量传递给上一级菜单

probe OPTIONS DEVICE

​ 检测设备信息

rand [OPTIONS] VARIABLE

​ 生成伪随机数

rdmsr [OPTIONS] ADDR

​ Read a model-specific register at address ADDR.

​ Please note that on SMP systems, reading from a MSR that has a scope per hardware thread, implies that the value that is returned only applies to the particular cpu/core/thread that runs the command.

​ Also, if you specify a reserved or unimplemented MSR address, it will cause a general protection exception (which is not currently being handled) and the system will reboot.

read [VARIABLE] [hide | asterisk]

​ 读取一行用户输入

read_byte [OPTIONS] ADDR

​ 从 ADDR 读取8比特数值

read_dword [OPTIONS] ADDR

​ 从 ADDR 读取32比特数值,参数同 “read_byte”

read_file FILE VARIABLE …

​ 读取文件,将文件的内容逐行设置为变量

read_word [OPTIONS] ADDR

​ 从 ADDR 读取16比特数值,参数同 “read_byte”

reboot

​ 重启计算机

regexp [OPTIONS] ‘REGEXP’ “STRING”

​ 测试正则表达式 REGEXP 是否匹配字符串 STRING

​ 支持的正则表达式是 POSIX.2 扩展正则表达式。

​ 如果给定了–set选项,则将匹配的第一个子表达式存储在变量var中。 子表达式按其开头括号从 1 开始编号。 数字默认为 1。

reset [OPTIONS]

​ 重启计算机

save_env [OPTIONS] VARIABLE …

​ 将变量从 GRUB 环境保存到环境块文件,参数同 “load_env”

sbpolicy [OPTIONS]

​ 安装绕过安全启动的安全策略。启用此功能,可以在安全启动开启的情况下加载未签名的 EFI 程序。

警告:使用此命令可能会导致安全方面的问题

search OPTIONS STRING

​ 搜索磁盘

serial [OPTIONS]

​ 配置串口

setenv [OPTIONS] EFI_ENV VALUE

​ 写入 UEFI 环境变量

警告:使用此命令会修改 UEFI 环境变量

警告:使用此命令可能会导致安全方面的问题

setkey OPTIONS NEW_KEY USA_KEY

​ 将美式键盘的某个按键 (USA_KEY) 映射为另一个按键 (NEW_KEY)

​ 最多同时支持 255 组映射关系。

setpci [OPTIONS] REGISTER[=VALUE[:MASK]]

​ 操作PCI设备

setup_var offset [setval]

​ Read/Write specific (byte) offset of setup variable.

警告:使用此命令会修改 UEFI 环境变量

警告:使用此命令可能会导致安全方面的问题

sha1sum arg …

​ 即 “hashsum –hash sha1 arg …”

sha256sum arg …

​ 即 “hashsum –hash sha256 arg …”

sha512sum arg …

​ 即 “hashsum –hash sha512 arg …”

shell [OPTIONS] CMDLINE

​ 启动 UEFI Shell

sleep [OPTIONS] n

​ 等待 n 秒

​ 若倒计时结束,则返回 0。若倒计时被 ESC 中断,则返回 1。

smbios [OPTIONS]

​ 检索 SMBIOS 信息

stat [OPTIONS] FILE

​ 显示文件和文件系统信息

strconv [OPTIONS] STRING

​ 字符串 UTF-8/GBK 编码转换

​ 定义子菜单,当此项被选中执行时,会显示包含大括号里面菜单项的新菜单

​ 参数同 “menuentry”

​ 从当前子菜单退出

terminfo [OPTIONS] [TERM]

​ 设置终端类型

test EXPRESSION

​ 计算表达式,如果结果为 true,则返回零,否则返回非零状态

​ 支持以下表达式

testspeed [OPTIONS] FILE

​ 测试文件读取速度

tetris

​ 俄罗斯方块游戏。请先执行 terminal_output console

tr [OPTIONS] [SET1] [SET2] [STRING]

​ 将字符串 STRING 中的字符 SET1 替换为 SET2

​ 若输入两个参数,则输入字符串须由 --set 选项指定。

true

​ 直接返回 TRUE (0)

​ 用于 if 或 while 语句。

trust [OPTIONS] PUBKEY_FILE

​ 将 PUBKEY 添加到信任密钥列表

type COMMAND

​ 检测命令是否存在,存在则返回 0

unalias NAME

​ 取消设置别名

uuid4 VARIABLE

​ 生成 UUID 字符串

vboot harddisk=FILE floppy=FILE cdrom=FILE boot=harddisk/floppy/cdrom

​ 进行 vboot 启动,指定硬盘镜像/软盘镜像/光盘镜像与默认启动设备。

​ 必须先执行 vbootinsmod 加载 vbootcore.mod。

​ 硬盘上需要含有vboot文件。

​ vboot的默认路径为/vboot/vboot,修改变量 vbootloader 以指定路径。

vbootinsmod FILE

​ 加载 vboot 核心文件 vbootcore.mod

verify_detached [OPTIONS] FILE SIGNATURE_FILE [PUBKEY_FILE]

​ Verify detached signature.

​ 参数同 “trust”

version

​ 显示 GRUB 版本信息

videoinfo [WxH[xD]]

​ 列出可用显示模式

vbeinfo [WxH[xD]]

​ 同 ‘videoinfo’

videomode [OPTIONS] VARIABLE

​ 获取当前/可用的显示模式,保存到变量

wimboot [OPTIONS] @:NAME:FILE

​ 启动 WIM 文件

wimtools OPTIONS FILE [WIN32_PATH]

​ WIM 解析工具

write_bytes ADDR VALUE …

​ 将一系列8比特数值写到地址 ADDR

警告:使用此命令可能会导致安全方面的问题