WebRTC 常用工具
Abstract |
WebRTC 常用工具 |
Authors |
Walter Fan |
Status |
WIP |
Updated |
2024-08-21 |
binutils
The GNU Binutils are a collection of binary tools. The main ones are:
ld - the GNU linker.
as - the GNU assembler.
But they also include:
addr2line - Converts addresses into filenames and line numbers.
ar - A utility for creating, modifying and extracting from archives.
c++filt - Filter to demangle encoded C++ symbols.
dlltool - Creates files for building and using DLLs.
gold - A new, faster, ELF only linker, still in beta test.
gprof - Displays profiling information.
nlmconv - Converts object code into an NLM.
nm - Lists symbols from object files.
objcopy - Copies and translates object files.
objdump - Displays information from object files.
ranlib - Generates an index to the contents of an archive.
readelf - Displays information from any ELF format object file.
size - Lists the section sizes of an object or archive file.
strings - Lists printable strings from files.
strip - Discards symbols.
windmc - A Windows compatible message compiler.
windres - A compiler for Windows resource files.
example
Linux Tools
seq 生成数字序列 wc -l 计算行数 sed awk cut head tail sort jq split tee tr uniq * vim: 输入 :%! xxd 用来编辑二进制文件
例如:
def localip(eth="en0"):
cmd = "ifconfig %s | grep inet | awk '$1==\"inet\" {print $2}'" % eth
local(cmd)
gprof
cc -g -c myprog.c utils.c -pg cc -o myprog myprog.o utils.o -pg
refer to https://sourceware.org/binutils/docs/gprof/index.html
Python Tools
psutil
import psutil
#refer to https://psutil.readthedocs.io/en/latest/#processes
def localres(times=10, type="cpu", app="safari"):
for i in range(int(times)):
if type == 'cpu':
print(psutil.cpu_percent(interval=1, percpu=True))
continue
print(psutil.net_if_stats())
for proc in psutil.process_iter(['pid', 'name', 'username']):
if app in proc.info["name"].lower():
print(proc.info)