----------------------------------------
ctags
----------------------------------------
ctags 帮助项目很多。 我们怎样掌握呢?
先看看它的能力。
[...]ctags --help |grep list
--languages=[+|-]list
specified in the comma-separated 'list'. The list can contain any
--list-kinds=[language|all]
Output a list of all tag kinds for specified language or all.
--list-languages
Output list of supported languages.
--list-maps=[language|all]
Output list of language mappings.
依次敲击一下,ctags --list-languages, ctags --list-maps, ctags --list-kinds
你就对languages, maps, kinds 有了理解。
然后敲击: ctags --list-kinkds=c, 看看c 语言的kinds.
[...]$ ctags --help |grep kinds
--<LANG>-kinds=[+|-]kinds
Enable/disable tag kinds for language <LANG>.
--list-kinds=[language|all]
Output a list of all tag kinds for specified language or all.
敲击: ctags --list-kinkds=c, 看看c 语言的kinds.
我们看到: p function prototypes [off]
就是说,原型prototypes 是关闭的。
怎样打开,用下面命令:用 --c-kinds=+p 选项
----------------------------------------
0. 全面进攻性扫描:
包括:主机发现,端口扫描,版本扫描,os扫描及脚本扫描
nmap -A -v targetIPs
1. ping 扫描
nmap -sn -v targetIPs
2. 快速端口扫描
nmap -F -v targetIPs
3. 版本扫描
nmap -sV -v targetIPs
4. 操作系统扫描
nmap -O -v targetIPs
nmap localhost
targetIPs 可以指定ip 范围: 例如: 192.168.11.0-255
ports 可以指定范围: 例如:
主机发现: 默认发送4种探测包:
a.icmp echo 请求包
b.tcp sync 包到 443
c. tcp ack 包到 80
d. icmp timestamp 请求包
-sn 则只进行主机发现,不进行端口扫描
端口状态:
1. opened. syn/ack
2. closed. syn/rst, fin/rst, udp/icmp port unreachable
3. filterd. ack/...
4. unfilterd ack/rst
5. oopened|filterd. fin/..., udp/...
6. closed|filterd
扫描方式: -sS, -sF, -sU
----------------------------------------
lsof 简单用法
----------------------------------------
lsof -h 哇,好复杂. 当参考书吧
lsof 列出所有,如果嫌慢,加参数吧。
lsof -c cmd // 查询莫命令打开的文件
lsof -p 919 // 查询莫进程打开的文件
lsof -i tcp:port // 查询端口被谁占用
lsof . 或者 lsof `pwd`或者 lsof |grep `pwd` // 查询谁占用当前目录
lsof +D . 递归列出本目录下所有文件被使用情况
lsof 文件名 // 查询文件被谁占用
#watch -n 2 -d free
-n选项 设置显示间隔
-d选项,让命令将每次不同的地方显示出来
循环运行free 命令, 监控变化。
vmstat 1
显示内存,cpu 占用情况, 1 是设置的时间间隔
netstat -anp |grep port
需要root 权限显示PID/program name
然后用ps -ef |grep PID 找到进程信息
socat:
socat UDP:127.0.0.1:8000 -
监听 udp 协议, 127.0.0.1:8000 端口,将内容显示到控制台上
ctags
----------------------------------------
ctags 帮助项目很多。 我们怎样掌握呢?
先看看它的能力。
[...]ctags --help |grep list
--languages=[+|-]list
specified in the comma-separated 'list'. The list can contain any
--list-kinds=[language|all]
Output a list of all tag kinds for specified language or all.
--list-languages
Output list of supported languages.
--list-maps=[language|all]
Output list of language mappings.
依次敲击一下,ctags --list-languages, ctags --list-maps, ctags --list-kinds
你就对languages, maps, kinds 有了理解。
然后敲击: ctags --list-kinkds=c, 看看c 语言的kinds.
[...]$ ctags --help |grep kinds
--<LANG>-kinds=[+|-]kinds
Enable/disable tag kinds for language <LANG>.
--list-kinds=[language|all]
Output a list of all tag kinds for specified language or all.
敲击: ctags --list-kinkds=c, 看看c 语言的kinds.
我们看到: p function prototypes [off]
就是说,原型prototypes 是关闭的。
怎样打开,用下面命令:用 --c-kinds=+p 选项
应用:
ctags 把idc 解释为c++ 文件
$ ctags --langmap=c++:+.idc --list-maps=c++
C++ *.c++ *.cc *.cp *.cpp *.cxx *.h *.h++ *.hh *.hp *.hpp *.hxx *.C *.H *.idc
这个选项 --langmap=c++:+.idc 把*.idc 添加到 c++ map 中.
要求ctags记录c++文件中的函数声明
$ ctags --c++-kinds=+p -R
----------------------------------------
----------------------------------------
0. 全面进攻性扫描:
包括:主机发现,端口扫描,版本扫描,os扫描及脚本扫描
nmap -A -v targetIPs
1. ping 扫描
nmap -sn -v targetIPs
2. 快速端口扫描
nmap -F -v targetIPs
3. 版本扫描
nmap -sV -v targetIPs
4. 操作系统扫描
nmap -O -v targetIPs
nmap localhost
targetIPs 可以指定ip 范围: 例如: 192.168.11.0-255
ports 可以指定范围: 例如:
主机发现: 默认发送4种探测包:
a.icmp echo 请求包
b.tcp sync 包到 443
c. tcp ack 包到 80
d. icmp timestamp 请求包
-sn 则只进行主机发现,不进行端口扫描
端口状态:
1. opened. syn/ack
2. closed. syn/rst, fin/rst, udp/icmp port unreachable
3. filterd. ack/...
4. unfilterd ack/rst
5. oopened|filterd. fin/..., udp/...
6. closed|filterd
扫描方式: -sS, -sF, -sU
----------------------------------------
lsof 简单用法
----------------------------------------
lsof -h 哇,好复杂. 当参考书吧
lsof 列出所有,如果嫌慢,加参数吧。
lsof -c cmd // 查询莫命令打开的文件
lsof -p 919 // 查询莫进程打开的文件
lsof -i tcp:port // 查询端口被谁占用
lsof . 或者 lsof `pwd`或者 lsof |grep `pwd` // 查询谁占用当前目录
lsof +D . 递归列出本目录下所有文件被使用情况
lsof 文件名 // 查询文件被谁占用
#watch -n 2 -d free
-n选项 设置显示间隔
-d选项,让命令将每次不同的地方显示出来
循环运行free 命令, 监控变化。
vmstat 1
显示内存,cpu 占用情况, 1 是设置的时间间隔
netstat -anp |grep port
需要root 权限显示PID/program name
然后用ps -ef |grep PID 找到进程信息
socat:
socat UDP:127.0.0.1:8000 -
监听 udp 协议, 127.0.0.1:8000 端口,将内容显示到控制台上