1、linux 常见命令的列表这是一个 linux 常见命令的列表。那些有 标记的条目,你可以直接拷贝到终端上而不需要任何修改,因此你最好开一个终端边读边 剪切 do echo $dir; echo cmd2; done 对每一个找到的文件执行多个命令(使用 while 循环) find -type f ! -perm -444 寻找所有不可读的文件(对网站有用) find -type d ! -perm -111 寻找不可访问的目录(对网站有用) locate -r file/*.txt 使用 locate 查找所有符合*file*.txt 的文件网络(ifconfig, route, mii-
2、tool, nslookup 命令皆已过时) ip link show 显示 interface 列表ethtool interface 显示 interface 状态ip link set dev eth0 name wan 重命名 eth0 为 wanip addr add 1.2.3.4/24 brd + dev eth0 添加 ip 和掩码(255.255.255.0)ip link set dev interface up 启动 interface(或关闭)ip route add default via 1.2.3.254 设置默认网关 1.2.3.254 tc qdisc add
3、 dev lo root handle 1:0 netem delay 20msec 增加 20ms 传输时间到 loopback 设备(调试用) tc qdisc del dev lo root 移除上面添加的传输时间 host pixelbeat.org 查找给定名字的 ip 地址,反之亦然 hostname -i 查找本地 ip 地址(相当于 host hostname) netstat -tupl 列出系统中的 internet 服务 netstat -tup 列出活跃的连接wget (多用途下载工具) (cd cmdline ibase=10; 123 | bc 进制转换(十进制到十
4、六进制) echo $(0x2dec) 进制转换(十六进制到十进制)(shell 数学扩展 ) echo pad=20; min=64; (100*106)/(pad+min)*8) | bc 更复杂地计算,这里计算了最大的 FastE 包率 echo pad=20; min=64; print (100E6)/(pad+min)*8) | python Python 处理数值的科学表示法 echo pad=20; plot 64:1518 (100*10*6)/(pad+x)*8) | gnuplot -persist 显示 FastE 包率相对于包大小的图形文本操作 (sed 使用标准输入
5、和标准输出,如果想要编辑文件,则需添加 newfile)sed s/string1/string2/g 使用 string2 替换 string1sed s/(.*)1/12/g 将任何以 1 结尾的字符串替换为以 2 结尾的字符串sed / *#/d; / *$/d 删除注释和空白行sed :a; /$/N; s/n/; ta 连接结尾有的行和其下一行sed s/ t*$/ 删除每行后的空白sed s/(“$)/1/g 将所有转义字符之前加上sed -n 1000p;1000q 输出第一千行sed -n 10,20p;20q 输出第 10-20 行sed -n s/.*(.*).*/1/p;
6、T;q 输出 HTML 文件的字段中的 内容sort -t. -k1,1n -k2,2n -k3,3n -k4,4n 排序 IPV4 地址 echo Test | tr :lower: :upper: 转换成大写 tr -dc :print: /dev/null 总结/剖析命令进行的系统调用 strace -f -e open ls /dev/null 显示命令进行的系统调用 ltrace -f -e getenv ls /dev/null 显示命令调用的库函数 lsof -p $ 显示当前进程打开的文件 lsof 显示打开用户目录的进程 tcpdump not port 22 显示除了 ss
7、h 外的网络交通 . 参见 tcpdump_not_me ps -e -o pid,args -forest 以树状结构显示进程 ps -e -o pcpu,cpu,nice,state,cputime,args -sort pcpu | sed / 0.0 /d 以 CPU 占用率为序显示进程 ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS 以内存使用量为序显示进程. 参见 ps_mem.py ps -C firefox-bin -L -o pid,tid,pcpu,state 显示指定进程的所有线程信息 ps -p 1,2 显示指定
8、进程 ID 的进程信息 last reboot 显示系统重启记录 free -m 显示(剩余的) 内存总量(-m 以 MB 为单位显示) watch -n1 cat /proc/interrupts 监测文件/proc/interrupts 的变化系统信息 (参见 sysinfo)hdparm -i /dev/hda 显示关于磁盘 hda 的信息hdparm -tT /dev/hda 检测磁盘 hda 的读取速度badblocks -s /dev/hda 检测磁盘 hda 上所有的坏扇区 mount | column -t 显示所有挂载的文件系统并对齐输出 cat /proc/partitio
9、ns 显示所有在系统中注册的分区 grep MemTotal /proc/meminfo 显示系统可见的内存总量 grep “model name“ /proc/cpuinfo 显示 CPU 信息 lspci -tv 显示 PCI 信息 lsusb -tv 显示 USB 信息recode (iconv, dos2unix, unix2dos 已经过时了) recode -l | less 显示所有有效的字符集及其别名recode windows-1252 file_to_change.txt 转换 Windows 下的 ansi 文件到当前的字符集(自动进行回车换行符的转换)recode ut
10、f-8/CRLF file_to_change.txt 转换 Windows 下的 ansi 文件到当前的字符集recode iso-8859-15utf8 file_to_change.txt 转换 Latin9(西欧)字符集文件到 utf8recode /b64 file.b64 Base64 编码recode /qp file.qp Quoted-printable 格式解码recode HTML file.html 将文本文件转换成 HTML recode -lf windows-1252 | grep euro 在字符表中查找欧元符号 echo -n 0x80 | recode latin-9/x1dump 显示字符在 latin-9 中的字符映射 echo -n 0x20AC | recode ucs-2/x2latin-9/x 显示 latin-9 编码 echo -n 0x20AC | recode ucs-2/x2utf-8/x 显示 utf-8 编码交互 mc 强大的文件管理器,可以浏览 rpm, tar, ftp, ssh, . screen 多窗口的虚拟终端, . links 网页浏览器 gnuplot 交互式并可进行脚本编程的画图工具 octave 类似于 matlab 的工具