不同程序中的regex的使用
grep
| 表达式 | 含义 | |
|---|---|---|
| -E | 扩展正则表达式 | |
| -G | 基本正则表达式 | |
| -P | perl基本表达式 | |
| -o | 仅仅输出匹配结果 | |
| -v | 进行求非操作 | |
| -c | 计算匹配的总数 |
perl
| 表达式 | 含义 | |
|---|---|---|
| m/pattern/ | 搜索 | |
| s/pattern/pattern/ | 替换 | |
| qr/pattern/ | 返回一个regex对象供以后使用 | |
| split() | 把一个字符串拆分成子字符串 | |
| \i | 不区分大小写 | |
| \g | 全局搜索 | |
| $’ | 匹配前面的所有东西 | |
| $` | 匹配之后的所有东西 | |
| $& | 整个匹配的字符串 |
| 表达式 | 含义 | |
|---|---|---|
| -E | 扩展正则表达式 | |
| -G | 基本正则表达式 | |
| -P | perl基本表达式 | |
| -o | 仅仅输出匹配结果 | |
| -v | 进行求非操作 | |
| -c | 计算匹配的总数 |
| 表达式 | 含义 | |
|---|---|---|
| m/pattern/ | 搜索 | |
| s/pattern/pattern/ | 替换 | |
| qr/pattern/ | 返回一个regex对象供以后使用 | |
| split() | 把一个字符串拆分成子字符串 | |
| \i | 不区分大小写 | |
| \g | 全局搜索 | |
| $’ | 匹配前面的所有东西 | |
| $` | 匹配之后的所有东西 | |
| $& | 整个匹配的字符串 |
backtrace 在程序出现错误之后,使用它可以看出出错的函数被哪个函数所调用。
查看内存地址存放的值
1
| |
查看代码。
1
| |
如list 1,90用来查看1到90行的代码。
visudo修改为不需要密码,将
%sudo ALL=(ALL):ALL
修改为 %sudo ALL=(ALL) NOPASSWD: ALL
将用户user_name添加至sudo用户组
1
| |
重新登录后,user_name用户即已经位于sudo用户组中。
字符翻转
1
| |
可交换的替换单词
1 2 3 4 5 | |
1
| |
/\<idiot\>/
This text specifies the text we are looking for wand want. The < tells Vim to match a word start and the > tells Vim to match the end of a word.
\<表明匹配的是一个单词的开始,\>表明匹配的是一个单词的结束。
1
| |
该函数负责修改内核定时器timer的超时字段expires。该函数可以修改激活和没有激活的内核定时器的超时时间,并把它们都设置为激活状态;返回值为0表示修改的内核定时器在修改之前处于未激活状态,返回值为1表示修改的内核定时器在修改之前处于已激活状态。
网络字节序为大端序。
内核其他模块和用户空间应用程序可能都想知道网络设备注册、注销、打开、关闭的时间,因此提供了两个产生事件通知的途径,即netdev_chain通知链和netlink的RTMGRP_LINK组播组。
A,B都是整数并且 A>1, B>1,求 ┌ A/B ┐ 即 A/B 的上取整。
当A/B 整除,往上取整返回值 为 A/B。
当不整除,返回值是 int(A/B) + 1
这个算法的一个应用:如果你有一个动态增长的缓冲区,增长的步长是 B,某一次缓冲区申请的大小是 A,这个时候,就可以用这个算法,计算出缓冲区的一个合适大小了,正好可以容纳A,并且不会过于得多,多余部分不会比B多。
IEEE 802.15.4 MAC帧控制字段中帧类型的数值
信标帧:000
数据帧:001
确认帧:010
命令帧:011