Linux开发常用命令
Linux开发常用命令系统whereispslsdu (查看文件大小)findgreplnldldconfigpkg-confignmxxdobjcopyobjdumpelfeditreadelfreadlinklsofss网络netstatiptablestcpdumpcurlIP地址归属查询应用upnpcmodule操作相关命令lsmodinsmodremodmodinfomodprobeARM Linuxdf -hcat /proc/mtd 查看分区信息tailLinux 脚本ubuntu 清零CACHE系统whereis查找命令或文件位置$ whereis ls # 查找ls命令位置$ whereis libupnpp.so # 查找libupnpp.so动态库所在位置ps查找指定进程名称$ ps aux | grep 进程名称$ ps aux | grep mpdls$ ls$ ls -i$ ls -l$ ls -h$ ls -lh$ ls -ilhdu (查看文件大小)dudu -ldu --max-depth1du -lh --max-depth1find$ find ./ -type f -name “mpd.conf”grep$ grep -rn “mpd” ./ln软链接$ ln -s 现有文件 软链接名ld检查链接器是否能找到库$ ld -lupnp --verboseldconfig$ sudo ldconfig # 加载$ sudo ldconfig -p # 输出当前信息$ sudo ldconfig -p | grep upnp # 输出libupnp相关信息pkg-config模块信息文件*.pc 文件通常位于/usr/lib/pkgconfig//usr/share/pkgconfig//usr/local/lib/pkgconfig/usr/local/lib/x86_64-linux-gnu/pkgconfig$ pkg-config --exists 模块名称 echo “找到输出的信息”$ pkg-config --modversion 模块名称$ pkg-config --cflags 模块名称$ pkg-config --libs 模块名称nm查看库文件信息$ nm /usr/local/lib/x86_64-linux-gnu/libupnpp.so查找库文件是否有指定的内容$ nm -D /usr/lib/x86_64-linux-gnu/libjsoncpp.so | cfilt | grep “Json::Value::get”xxd$ xxd -l 1024 文件名 # 以16进制查看 文件 开头1024字节数据objcopyobjdumpelfeditreadelfreadlinklsof查找端口号被哪些进程占用$ sudo lsof -i :端口号COMMAND命令PID命令进程IDsudo kill 进程ID # 杀掉指定PID的进程ss查找端口占用ss tulpn | grep 端口号网络netstat查找端口占用iptablestcpdumpsudo tcpdump -i any port 80 -A -s 0curlIP地址归属查询$curl -s ip-api.com应用upnpc$ sudo apt install miniupnpc# 查找设备 upnpc-l # 调用 SetAVTransportURI需手动构造 DIDL upnpc-arenderer-ipport\SetAVTransportURI\InstanceID0\CurrentURIhttp://example.com/song.mp3\CurrentURIMetaDataDIDL-Lite xmlns.../DIDL-Litemodule操作相关命令lsmodinsmodremodmodinfomodprobeARM Linuxdf -hcat /proc/mtd 查看分区信息cat /proc/mtdtailtail /var/log/xxx.log # 打印日志文件最后10行数据tail -n 50 /var/log/xxx.log # 打印日志文件最后50(可自定义)行数据tail -f /var/log/xxx.log # 打印日志文件增长数据# tail --helpBusyBox v1.27.2()multi-call binary. Usage:tail[OPTIONS][FILE]... Print last10lines of each FILE(or stdin)to stdout. Withmorethan one FILE, precede each with a filename header.-fPrint data asfilegrows-c[]N[kbm]Print last N bytes-nN[kbm]Print last N lines-nN[kbm]Start on Nth line and print the rest-qNever print headers-sSECONDSWaitSECONDSbetween reads with-f-vAlways print headers-FSame as -f, but keep retrying N may be suffixed by k(x1024), b(x512), or m(x1024^2).Linux 脚本ubuntu 清零CACHE#!/bin/bashsyncecho1|sudotee/proc/sys/vm/drop_cachessyncecho2|sudotee/proc/sys/vm/drop_cachessyncecho3|sudotee/proc/sys/vm/drop_caches