[linux device driver] Chapter 03:从scull_load了解awk
来源:互联网 发布:windows命令行工具 编辑:程序博客网 时间:2024/05/16 10:53
scull_load里有这样一句与awk相关的语句,从这里我们引入awk的讨论:
major=`cat /proc/devices | awk "\\$2==\"$module\" {print \\$1}"`
那么,为什么在awk后面使用这么多斜杠呢?
首先我们需要了解bash中双引号的使用。
在bash中,双引号只解释变量名前缀$、后引符`、转定义符\。
在这里,假如module=usb,那么awk必须使用第二列与”usb“进行比较,因为双引号内特殊字符除了刚才上面说的那三个,其他的都必须使用转定义,所以必须在双引号前加上转定义符,于是就有\"$module\"。
同样,为了不让双引号解释$1和$2,需要在前面加上转定义符号\,于是就有\$2,但是在bash脚本中$2还是传入参数,于是仍然需要在前面再加上转定义符号\,最后就成了\\$2,对于每一个引号内以$开头的的内容,前面必须加上两个转定义符\\。
上面的例子是从/proc/devices中查找scullc模块,并得到主设备号,major就是其主设备号。
另:
AWK简明教程
linux awk命令详解
AWK程序设计语言
0 0
- [linux device driver] Chapter 03:从scull_load了解awk
- [linux device driver] Chapter 03:scull_load脚本理解
- [linux device driver] Chapter 03:从scull_load学习小括号,中括号,和大括号的区别
- [linux device driver]Chapter 03:Scull_load中涉及到的群组权限之staff\wheel
- [linux device driver]Chapter 03:scull_load中涉及到的bash命令 exit
- [linux device driver] Chapter 03:以scull_load为引,详解shell逻辑运算、基本运算、位运算
- [linux device driver] Chapter 03:以scull_load为例,详解mknod命令
- [linux device driver] Chapter 03:以scull_load为引,详解Bash的位置参数和内部参数
- [linux device driver] Chapter 03:以scull_load为例,讲解bash中反单引号`、双引号等的作用
- [linux device driver] Chapter 03:scullc_open理解
- [linux device driver] Chapter 03:字符设备注册学习
- [linux device driver] Chapter 03:IS_ERR的理解
- [linux device driver] Chapter 03:make输出重定向
- [linux device driver] Chapter 14:kobject_init的理解
- [linux device driver] Chapter 04:Magic SysRq Key
- [linux device driver] Chapter 04:使用/proc文件系统查询调试
- [linux device driver] Chapter03:从kmalloc谈起
- Linux Device Driver: char device
- 如何获取java中泛型参数的实际类型--反射获取
- 实模式和保护模式
- HDU 2717--Catch That Cow【BFS】
- codeforces 13C Sequence(排序,DP)
- Android开发_Activity启动模式
- [linux device driver] Chapter 03:从scull_load了解awk
- 腾讯游戏10大经典案例(一):唯一索引上的重复键
- android进程inject注入
- 配置64位UBUNTU 编译环境出现的arm-none-linux-gnueabi-gcc: not found
- 用c语言实现 编写程序数一下1到100的所有整数中出现多少次数字9
- Ubuntu下安装和配置Apache2
- 位结构体+大小端模式
- HDU 2046 斐波那契数列
- Seven Puzzle (AOJ 0121 bfs)