my_learn

rz  -e  强制下载

sz

cut

-b 以字节未单位进行分割  cut -b 3

-f 显示指定字段的内容  cut  -f1,2  

-d 指定字段的分割符 默认为tab

awk

awk 'BEGIN{ commands } pattern{ commands } END{ commands }'

awk ‘{i=$1;count[i]++}END{for(i in count)print(i,count[i])}’ /var/log/httpd/access_log

cat access_log | grep '12/Aug/2009' | grep '/images/index/e1.gif' | wc | awk '{print $1}

tcpdump

 tcpdump [options] [not ] proto dir type
options :-D 列出能监控的端口 加到 -i后面
-i 指定接口
-XX 输出包头数据
-vvv 显示详细输出
-nn 不解析未域名 不解析端口
-c 制定抓包的个数
proto :协议 udp/tcp/icmp/arp/ip/ether 
dir : 制定方向 dst src src and dst src or dst 
type: port host net portrange 
telnet 通过用户名和密码远程端口

perf

https://www.cnblogs.com/arnoldlu/p/6241297.html

 perf record -a -g ./fork

perf report --call-graph none

strace   内核调用跟踪

syscall手册:http://man7.org/linux/man-pages/man2/syscalls.2.html

strace -tt -f  ./some_server ../conf/some_server.conf
文件和设备访问类 比如open/close/read/write/chmod等
进程管理类 fork/clone/execve/exit/getpid等
信号类 signal/sigaction/kill 等
内存管理 brk/mmap/mlock等
进程间通信IPC shmget/semget * 信号量,共享内存,消息队列等
网络通信 socket/connect/sendto/sendmsg 等
其他
strace -p 17553  跟踪正在运行的程序

-tt 在每行输出的前面,显示毫秒级别的时间
-T 显示每次系统调用所花费的时间
-v 对于某些相关调用,把完整的环境变量,文件stat结构等打出来。
-f 跟踪目标进程,以及目标进程创建的所有子进程
-e 控制要跟踪的事件和跟踪行为,比如指定要跟踪的系统调用名称
-o 把strace的输出单独写到指定的文件
-s 当系统调用的某个参数是字符串时,最多输出指定长度的内容,默认是32个字节
-p 指定要跟踪的进程pid, 要同时跟踪多个pid, 重复多次-p选项即可。

-e trace=file     跟踪和文件访问相关的调用(参数中有文件名)
-e trace=process  和进程管理相关的调用,比如fork/exec/exit_group
-e trace=network  和网络通信相关的调用,比如socket/sendto/connect
-e trace=signal    信号发送和处理相关,比如kill/sigaction
-e trace=desc  和文件描述符相关,比如write/read/select/epoll等
-e trace=ipc 进程见同学相关,比如shmget等

-c 统计徐通调用情况和其所花的时间
当目标进程卡死再用户态时,starce就没有输出

grep

-i 忽略大小学  

-n 显示行号

-c 统计个数

-o 只匹配关键字

-B  相当于before 打印之前的几行

-A  相当于after 打印之后的几行

-C  -A和-B的结合 打印前后几行

-v 取反

-e  匹配多个目标

-q 静默模式

-E 支持扩展正则  相当于egrep

fgrep  只匹配写死的字符串 但数据奇快  效率高

sed 

sed [option]... 'script' inputfile
选项
-n 不输出模式空间内容到屏幕,即不自动打印
-e 多点编辑
-f /PATH/SCRIPT_FILE: 从指定文件中读取编辑脚本
-r 支持使用扩展正则表达式
-i 直接编辑文件
-i.bak 备份文件并原处编辑
script 地址定界
不给地址:对全文进行处理
单地址:
#: 指定的行,$:最后一行
/pattern/:被此处模式所能够匹配到的每一行
地址范围:
#,#
#,+#
/pat1/,/pat2/
`#,/pat1/
~:步进
1~2 奇数行
2~2 偶数行
编辑命令:
d 删除模式空间匹配的行,并立即启用下一轮循环
p 打印当前模式空间内容,追加到默认输出之后
a []text1 在指定行后面追加文本,支持使用 实现多行追加
i []text 在行前面插入文本
c []text 替换行为单行或多行文本
w /path/somefile 保存模式匹配的行至指定文件
r /path/somefile 读取指定文件的文本至模式空间中匹配到的行后
= 为模式空间中的行打印行号
! 模式空间中匹配行取反处理
s///:查找替换,支持使用其它分隔符,s@@@,s###
替换标记:
g 行内全局替换
p 显示替换成功的行
w /PATH/TO/SOMEFILE 将替换成功的行保存至文件中

uniq 删除文本文件中重复出现的行列

-c  行首显示出现重复的次数

-d 仅显示出现重复的行列

sort  排序

-t   指定分割符

-r   倒序

-n  以数字排序

-k 以第几个字段排序 可以多个k

原文地址:https://www.cnblogs.com/leo001/p/11105543.html