什么是UEFI Shell
UEFI Shell是一种特殊对待UEFI_APPLICATION。提供用户和UEFI系统之间的一个接口。它有很强大的功能,但是正常启动计算机系统时,不会用到UEFI Shell,只有当系统启动出现问题,或者用户就是喜欢UEFI Shell(就像博主我一样,深深的爱着UEFI),主动进入UEFI Shell来对计算机系统进行配置,那么就到了UEFI Shell 大显身手,炫酷吊炸天的时候来了。
玩儿转UEFI Shell
Shell提供了丰富的内部命令。可以分为几大类:调试(Debug1),驱动(Driver1),网路(NetWork1),安装(Install1),Level1,Level2,Level3。没错,万能的help指令,在这里也是适用的,哪里不懂,就在哪里help一下就行了,比如指令:help ifconfig,就可以查看ifconfig的帮助信息,单独的help,就会输出所有的显示指令。另外,若不特殊说明,Shell内置命令的命令行参数中的数值使用十六进制,Shell命令和Linux指令不同,不区分大小写。
Shell命令的通用选项
命令行参数
意思
命令行参数
意义
-b,-break
输出信息分屏显示
-t,-terse
用简洁格式输出信息
-q,-quit
不输出任何信息
-v,-verbose
输出辅助信息
-sfo
用标准格式输出
-?
输出帮助信息
 
1.调试设备的相关命令
调试设备的相关指令主要用于查询,读取或写设备。
 
Dmem命令用于查看内存或设备内存,指令如下:
Dmem [-b] [adress] [size] [-MMIO](说明:[]中的内容可以又或者没有的参数。)
其中address,size都是十六进制,-MMIO指定地址为设备内存。
不带参数的dmem将会输出EFI系统表。
 
Mm命令用于查看或修改MEM(系统内存),MMIO(设备内存),IO(寄存器),PCI(PCI配置空间)和PCIE(PCIE配置空间)
命令如下:
Mm address [value] [-w 1|2|4|8] [-MEM| -MMIO | -IO|-PCI|-PCIE] [-n]
在上面的代码中,address为地址,value为要写入的值,-w后跟访问宽度,-n表示非交互式模式,如果不指定-n,则该命令进入交互模式。
2.驱动相关的命令
驱动类命令主要用于加载,卸载,查询驱动和驱动设备控制器。
 
Dh命令用于列出系统中所有设备的信息,或某个设备的相关信息。格式如下:
Dh [-l<lang>] [handle | -p <prot_id>] [-d] [-v]
说明:
[-l<lang>] 表示指定的语言显示
handle 是指UEFI Handle在系统中的编号。若没有指明handle,dh命令将列出所有设备的信息
-p <prot_id>列出所有安装了Protocol prot_id的设备信息
-d用于列出驱动相关的信息
-v用于输出verbose的信息
 
Device命令用于显示所有被驱动的设备信息。
 
Driver命令用于列出系统中的driver。
 
Connect用于加载驱动到设备上并启动加载的驱动。该命令的格式:
Connect [[DeviceHandle] [DriverHandle] | [-c] | [-r]]
-c用于连接控制台设备
-r用于递归扫描所有handle,发现匹配的设备和驱动就加进来,没有-r,新产生的设备将不会被连接。
 
Disconnect用于将驱动从设备上卸载下来。命令格式如下:
Disconnect DeviceHandle [DriverHandle [ChildHandle]] [-r]
 
Load命令御用加载驱动
Unload用于将驱动从内存清楚
 
3.网络相关命令
Ifconfig用于配置网络设备,该命令的格式如下:
Ifconfig [-?] [-c [Name]] [-l [Name]] [-s <Name> dhcp | <static <IP><MASK><Geteway>> [permanent]]
Name是网络适配器的名字,如etho0等
-c用于清除网络适配器的配置
-l用于列出网络适配器的配置
-s用于设备网络适配器的IP地址
 
Ping命令用于ping目标及其。格式如下:
Ping [ -n number] [-l size] TargetIP
-l size用于发送size字节的数据
-n number表示发送数据的次数。
 
Shell内置命令表
Shell命令
功能
Shell命令
功能
Alias
显示,创建,删除别名
Dh
显示设备句柄
Attrib
显示,更改文件或目录属性
Discount
从指定设备卸载驱动
Bcfg
管理启动项
Dmem
显示系统或设备内存的内容
Cd
更改当前目录
Dmpstore
管理UEFI NVRAM变量
Cls
清空标准输出;更爱背景颜色
Drivers
显示设备驱动
Comp
比较两个文件
Drvcfg
配置驱动
Connect
将driver绑定到指定的设备并启动driver
Drvdiag
调动Driver Disgnostis Protocol
Cp
将文件或文件夹复制到另一个位置
Echo
回显
Date
显示或设置日期
Edit
编辑ASCII或UCS-2文件
Dblk
显示块设备里的块
Eficopress
压缩文件
Devices
列出所有设备
Efidecompre
解压文件
Devtree
显示设备树
Exit
退出Shell或脚本
Help
显示帮助
Reconnect
重新连接驱动与设备
Hexedit
二进制编辑器,可编辑文件,块设备或内存
Reset
重启系统
Ifconfig
配置IP地址
Rm
删除文件或目录
Load
加载UEFI驱动
Setmode
设置串口属性
Loadpcirom
加载PCI ROM
Set
显示或修改Shell中的环境变量
Ls
列出目录内容或文件信息
Setzize
调整文件大小
Map
显示Mapping
Setvar
设置UEFI变量
Memmap
显示目录映射
Smbiosview
显示SMBIOS信息
Mkdir
创建目录
Stall
在指定的时间内暂停执行
Mm
列出或修改MEM/MMIO/IO/PCI/PCIE地址空间
Time
显示/设置时区
Mode
列出或修改输出设备的模式
Timezone
显示/设置时区
Mv
移动文件或目录
Touch
更新文件时间设置
Openinfo
显示ProtocolS打开信息
Type
显示文件类型
Pause
暂停执行脚本,等待用户输入
Unload
卸载驱动
PCI
显示PCI设备
Vol
显示/设置卷标
Ping
ping
 
 https://blog.csdn.net/Kair_Wu/article/details/48342093
 
 

UEFI Shell命令操作总结的更多相关文章

  1. Hadoop之HDFS(一)HDFS入门及基本Shell命令操作

    1 . HDFS 基本概念 1.1  HDFS 介绍 HDFS 是 Hadoop Distribute File System 的简称,意为:Hadoop 分布式文件系统.是 Hadoop 核心组件之 ...

  2. HDFS Shell命令操作与java代码操作

    (一)编程实现以下功能,并利用 Hadoop 提供的 Shell 命令完成相同任务: (1)     向 HDFS 中上传任意文本文件,如果指定的文件在 HDFS 中已经存在,则由用户来指定是追加到原 ...

  3. 入门大数据---HBase Shell命令操作

    学习方法 可以参考官方文档的简单示例来 点击查看 可以直接在控制台使用help命令查看 例如直接使用help命令: 从上图可以看到,表结构的操作,表数据的操作都展示了.接下来我们可以针对具体的命令使用 ...

  4. 使用shell命令操作数据库

    使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改.查)等各种操作 用法 mysql  -uxxx    –pxxx   -e  "mysql 命令" 当然还可以 ...

  5. redhat_快捷键和shell命令操作.md

    tab键 命令自动补全 history !n 执行历史记录第n条 !! 执行上一条命令 !l 最后一条以l开头的命令 alias 创建命令的别名 alias 命令别名 = "命令行" ...

  6. hbase学习一 shell命令操作

    基本操作: #命名空间级别: #列出所有命名空间 hbase> list_namespace #新建命名空间 hbase> create_namespace 'ns1' #删除命名空间 h ...

  7. windows的类似shell 命令操作

    一,类似linux的grep命令 参考网站:https://www.cnblogs.com/zxy1992/p/4372717.html windows执行cmd命令查找sql进程: C:\Users ...

  8. 【转】利用shell命令操作Memcached

    原文: 张宴的博客 —— http://zyan.cc/post/384/ -------------------------------------------------------------- ...

  9. 常用shell命令操作

    1.找出系统中所有的*.c 和*.h 文件 (-o 或者) $find / -name "*.cpp" -o -name "*.h" 2.设定 eth0 的 I ...

随机推荐

  1. TCP的概念

    中间节点.虚电路.失败重传 UDP:不可靠传输,并不承诺提供可靠的连接通道,所传送包完全可能失序.重复甚至丢失. TCP:端口号.三次握手建立可靠连接(第一次确认A端发送和B端接收能力,第二次确认A端 ...

  2. JAVA之Mybatis基础入门二 -- 新增、更新、删除

    上一节说了Mybatis的框架搭建和简单查询,这次我们来说一说用Mybatis进行基本的增删改操作: 一. 插入一条数据 1.首先编写USER.XML(表的xml)使用insert元素,元素写在map ...

  3. [纯C#实现]基于BP神经网络的中文手写识别算法

    效果展示 这不是OCR,有些人可能会觉得这东西会和OCR一样,直接进行整个字的识别就行,然而并不是. OCR是2维像素矩阵的像素数据.而手写识别不一样,手写可以把用户写字的笔画时间顺序,抽象成一个维度 ...

  4. DCDC电源 TPS54525

    电路图: 输入电压12V,输出电压5V.不接负载可以获得5V输出,接入负载后只有4mV,且PG为低. 预计原因:可能是上电瞬间电流过大,芯片过流保护. 解决方案:SS软启动引脚的电容C331加大至1u ...

  5. php 操作mysql

    //由于前期数据库字段设计问题,没太注意,字段内容,后台python采集数据直接插入,没做处理,数据又不想丢掉,只能对网站数据库字段内容进行处理,100万条数据,调试了半天,很多思路都试过,各种坑,弄 ...

  6. mvc开发中DTO,DO,FROM的区别

    DO:数据库实体类映射到model里的实体类,每个字段都和数据库相对应,一般来说开发的时候不要去添加或者修改里面的实体 DTO:与前台交互的时候(一般来说是查询操作)有一些数据字段是那一张表里面没有囊 ...

  7. Windows环境下在sublime text3配置C编译环境

    1. 检查本机有没有安装GCC,没有的话先进行安装 2. 选择 sublime 的Tools->Build System->New Build System,建立配置文件,文件命名为C.s ...

  8. 解决pre-commit hook failed (add --no-verify to bypass)的问题

    报错图 问题原因: pre-commit钩子惹的祸 当你在终端输入git commit -m"XXX",提交代码的时候, pre-commit(客户端)钩子,它会在Git键入提交信 ...

  9. gogs windows

    首先安装 git,然后下载 gogs. 在gogs 文件夹位置 启动. gogs.exe web 打开浏览器,输入 127.0.0.1:3000 ,安装 gogs,注意数据库选择,仓库根目录,管理员帐 ...

  10. Monggodb基础

    MongoDB 查询文档使用 find() 方法. find() 方法以非结构化的方式来显示所有文档. 语法 MongoDB 查询数据的语法格式如下: db.collection.find(query ...