嵌入式Linux应用开发完全手册读书笔记——常用的命令
嵌入式开发中常用的命令
grep命令
用法:grep [option] PATTERN [FILE...]
例如:
在内核目录下查找包含“request_irq”字样的文件
grep "request_irq" * -R
注:*表示查找当前目录下的所有文件、目录,-R表示递归查找子目录;
在内核的kernel目录下查找包含“request_irq”字样的文件
grep "request_irq" kernel -R
注:kernel表示当前目录下的kernel子目录下查找,-R表示递归查找它的所有目录;
find命令
用法:find [-H] [-L] [-P] [path...] [expression]
例如:
在内核目录下查找文件名包含“fb”字样的文件
find -name "*fb*"
在内核的drivers/net目录下查找文件名中包含“fb”字样的文件
find drivers/net -name "*fb*"
注:drivers/net必须是find命令的第一个参数;
tar命令
该命令具有打包、解包、压缩和解压缩等4种功能,常用的压缩、解压缩方式有两种:gzip和bzip2;
一般而言,以".gz"、"z"结尾的文件是用gzip方式进行压缩的,以".bz2"结尾的文件是用bzip2方式进行压缩的,后缀名中有"tar"字样时表示这是一个文件包;
tar命令有5个常用的选项:
| 选项 | 功能 |
|---|---|
| c | 表示创建,用来生成文件包 |
| x | 表示提取,从文件包中提取文件 |
| z | 使用gzip方式进行处理,它与“c”结合就表示压缩,与“x”结合就表示解压缩 |
| j | 使用bzip2方式进行处理,它与“c”结合就表示压缩,与“x”结合就表示解压缩 |
| f | 表示文件,后面接着一个文件名 |
diff和patch命令
diff命令常用来比较文件、目录,也可以用来制作补丁文件;
常用选项如下:
| 选项 | 功能 |
|---|---|
| -u | 表示在比较结果中输出上下文中一些相同的行,这有利于人工定位 |
| -r | 表示递归比较各个子目录下的文件 |
| -N | 将不存在的文件当做空文件 |
| -w | 忽略对空格的比较 |
| -B | 忽略对空行的比较 |
例如:
假设linux-2.6.22.6目录中是原始的内核,linux-2.6.22.6_ok目录中是修改过的内核,可以使用以下命令制作补丁文件linux-2.6.22.6_ok.diff(原始目录在前,修改过的目录在后),命令如下:
diff -urNwB linux-2.6.22.6 linux-2.6.22.6_ok > linux-2.6.22.6_ok.diff
由于linux-2.6.22.6是标准的代码,可以从网上自由下载,要发布linux-2.6.22.6_ok中所做的修改时,只需要提供补丁文件linux-2.6.22.6_ok.diff(通常是很小的);
patch命令是用来打补丁,就是依据补丁文件来修改原始文件;
比如对上面的例子,可以使用以下命令将补丁文件linux-2.6.22.6_ok.diff应用到原始目录linux-2.6.22.6中,假设linux-2.6.22.6_ok.diff和linux-2.6.22.6位于同一个目录下,命令如下:
cd linux-2.6.22.6
patch -p1 < ../linux-2.6.22.6_ok.diff
patch命令中最重要的选项是“-pn”,补丁文件中指明了要修改的文件的路径,“-pn”则表示忽略路径中第n个斜线之前的目录;
嵌入式Linux应用开发完全手册读书笔记——常用的命令的更多相关文章
- 嵌入式Linux应用开发完全手册读书笔记——交叉编译工具选项说明
交叉编译工具选项说明 arm-linux-gcc 一个c/c++文件要变成可执行文件需要4步:预处理 -> 编译 -> 汇编 -> 链接: 在使用arm-linux-gcc时的常用选 ...
- 嵌入式linux应用开发完全手册学习笔记一
2015.3.25星期三 晴 有两个星期没写学习日记了,找个时间把这段时间做的电子词典和ARM小项目总结一下. 下面的知识点总结,U-BOOT:参考PDF文档:嵌入式linux应用开发完全手册 当虚拟 ...
- 嵌入式Linux应用开发完全手册之环境搭建
@ 目录 0.下载源配置 1.电脑BIOS启动虚拟化 2.linux网卡查看与IP设置 3.windows NAT虚拟网络配置 4.修改 Ubuntu 的 mountd 端口 5.vim设置 6.Mo ...
- 驱动开发学习笔记. 0.06 嵌入式linux视频开发之预备知识
驱动开发读书笔记. 0.06 嵌入式linux视频开发之预备知识 由于毕业设计选择了嵌入式linux视频开发相关的项目,于是找了相关的资料,下面是一下预备知识 UVC : UVC,全称为:USB v ...
- 嵌入式Linux驱动开发日记
嵌入式Linux驱动开发日记 主机硬件环境 开发机:虚拟机Ubuntu12.04 内存: 1G 硬盘:80GB 目标板硬件环境 CPU: SP5V210 (开发板:QT210) SDRAM: 512M ...
- Linux内核设计与实现 读书笔记 转
Linux内核设计与实现 读书笔记: http://www.cnblogs.com/wang_yb/tag/linux-kernel/ <深入理解LINUX内存管理> http://bl ...
- 《The Linux Command Line》 读书笔记02 关于命令的命令
<The Linux Command Line> 读书笔记02 关于命令的命令 命令的四种类型 type type—Indicate how a command name is inter ...
- Linux Shell脚本攻略 读书笔记
Linux Shell脚本攻略 读书笔记 这是一本小书,总共253页,但内容却很丰富,书中的示例小巧而实用,对我这样总是在shell门前徘徊的人来说真是如获至宝:最有价值的当属文本处理,对这块我单独整 ...
- 如何使用eclipse进行嵌入式Linux的开发
如何使用eclipse进行嵌入式Linux的开发 作者:曾宏安,华清远见嵌入式学院高级讲师. 如何使用eclipse进行嵌入式Linux的开发 习惯了在windows环境下开发的程序员在转到Linux ...
随机推荐
- BP神经网络算法预测销量高低
理论以前写过:https://www.cnblogs.com/fangxiaoqi/p/11306545.html,这里根据天气.是否周末.有无促销的情况,来预测销量情况. function [ ma ...
- Leetcode 69. Sqrt(x)及其扩展(有/无精度、二分法、牛顿法)详解
Leetcode 69. Sqrt(x) Easy https://leetcode.com/problems/sqrtx/ Implement int sqrt(int x). Compute an ...
- Zookeeper 记录
本文主要是学习记录: 部分内容为 <从Paxos到Zookeeper> 部分内容为 zookpper 原理分析 https://www.cnblogs.com/leesf456/p/ ...
- matlab imread函数全说明
imread Read image from graphics file Syntax A = imread(filename, fmt) [X, map] = imread(...) [...] ...
- 学习笔记:CentOS7学习之二十:shell脚本的基础
目录 学习笔记:CentOS7学习之二十:shell脚本的基础 20.1 shell 基本语法 20.1.1 什么是shell? 20.1.2 编程语言分类 20.1.3 什么是shell脚本 20. ...
- C# lambda查询带返回值
问题来源: <深入理解C#(第3版)> 11页 具体如下: var lists=new List<string>{"111","222" ...
- mysql非主键提示key2 检查索引是否设定为唯一
- pymysql连接和操作Mysql数据库
pymysql 一.概要 PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库, 二.PyMySQL 安装 pip install pymysql 三.操作流程 创建c ...
- linux系统中启动mysql方式已经客户端如和连接mysql服务器
零点间的记录 一.启动方式1.使用linux命令service 启动:service mysqld start2.使用 mysqld 脚本启动:/etc/inint.d/mysqld start3.使 ...
- Scala当中什么是Transformation和 Action,以及它们俩的区别是什么?
[学习笔记] 一个完整的RDD任务由两部分组成:Transformation和 Action.Transformation用于对RDD的创建,还可以把老的RDD通过Transformation来生成新 ...