/bin
存放二进制可执行文件
/etc
存放系统管理和配置文件
/home
存放所有用户文件的根目录,用户主目录的基点
/usr
存放系统应用程序
/opt
额外安装的可选应用程序包所放置的位置,例如tomcat。
/proc
此目录的数据都在内存中,如系统核心、外部设备、网络状态……
/root
系统管理员root的家目录
/sbin、/usr/sbin、/usr/local/sbin 放置系统管理员使用的可执行命令,这些目录是给系统管理员root使用的命令,一般用户只能查看,不能设置和使用。
/tmp
一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放此目录下
/var
放置系统执行过程中经常变化的文件
pwd #查看当前目录的绝对路径
ls [参数] [目录] #列出文件或目录的信息
-a #显示所有文件,包含 . 开头的隐藏文件
-A #显示指定目录下所有的子目录及文件,包括隐藏文件,但不显示 . 和 ..
-c #按修改时间排序
-C #分成多列显示各行
-d #如果参数是目录,只显示名称而不显示其下的各文件
-l #以长格形式显示文件的详细信息
-i #在输出的第一列显示文件的i节点
-h #以更容易理解的形式显示文件大小

cat [参数] [文件名] #用于滚屏显示文件内容
-b #对输出内容非空行标注行号
-n #对输出内容所有行标注行号
more [参数] [文件名] #一页一页的分屏显示内容,按【enter】向下移动一行,【space】向下移动一页,【q】退出more命令。
-num #num是一个数字,用来指定分页显示的每页行数
+num #指定从文件的第num行开始显示
less #more命令的改进版,可以向下、向上翻页,还可以前后左右移动。
#按【enter】向下移动一行,【space】向下移动一页,【b】向上移动一页,用光标向前后左右移动,【q】退出less命令。
#支持在文件中快速查找,先按【/】,再输入要查的单词或字符。less命令会把第一个搜索目录高亮显示,如果需要继续查找,就再次按下【/】,再按【enter】。
head [参数] [文件名] #用于显示文件的开头部分,默认显示前10行。
-n num #显示前num行
-c num #显示前num个字符
tail [参数] [文件名] #用于显示文件的末尾部分,默认显示末尾10行。
-n num #显示末尾num行
-c num #显示末尾num个字符
+num #从第num行开始显示指定的文件内容
find [目录] [参数] #最强大的查找命令,可以找到任何你想找的文件
-name <表达式> #根据文件名查找文件
-user <用户名> #按归属用户查找文件
-type <文件类型> #根据文件类型查找文件。(b块设备、c字符设备、d目录、p管道文件、f普通文件、l链接、s端口文件)
-size <大小> #根据文件大小查找,单位b c w k M G
|xargs tar cvzf <文件名> #将查询的结果进行压缩
grep [参数] [要查找的字符串] [文件名] #用于查找文件中包含有指定字符串的行
-v #列出不匹配的行
-c #对匹配的行计数
-l #只显示包含匹配模式的文件名
-h #抑制包含匹配模式的文件名的显示
-n #每个匹配行只按照相对的行号显示
-i #对匹配模式不区分大小写
mkdir [参数] 目录名 #创建目录
-p #如果父目录不存在,则同时创建该目录及该目录的父目录
rmdir [参数] 目录名 #删除空目录
-p #在删除目录时,一起删除父目录,但父目录中必须没有其他目录文件
cp [参数] 源文件 目标文件 #用于文件或目录的复制
-f #如果目标文件或目录存在,先删除它们再进行复制(即覆盖),并不提示用户
-i #如果目标文件或目录存在,提示是否覆盖已有文件
-R #递归复制目录,即包含目录下的各级子目录
mv [参数] 源文件或目录 目标文件或目录 #用于文件或目录的移动或改名
-i #如果目标文件或目录存在时,提示是否覆盖目标文件或目录
-f #无论目标文件或目录是否存在,直接覆盖目标文件或目录,不提示
rm [参数] 文件名或目录名 #用于文件或目录的删除
-i #删除文件或目录时提示用户
-f #删除文件或目录时不提示用户
-R #递归删除目录,即包含目录下的文件和各级子目录
df [参数] #用于查看文件系统的各个分区的占用情况,该命令列出了系统上所有已挂载的分区大小、已占用的空间、可用空间以及占有率。(单位为k)
du [选项] [参数] #用于查看某个目录中的各级子目录所使用的硬盘空间数
-a #显示目录中个别文件的大小
-c #除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和
-k #以KB(1024bytes)为单位输出
-m #以MB为单位输出
-s #仅显示总计,只列出最后加总的值
-h #以K、M、G为单位,提高信息的可读性
ping [参数] [主机名或IP地址] #用于测试与目标主机的连通性,它通过发送ICMP ECHO_REQUEST数据包到网络主机,并显示响应情况
-c 数目 #在发送指定数目的包后停止
-s 字节数 #指定发送的数据字节数,预设值是56,加上8字节的ICMP头,一共是64ICMP数据字节
-i 秒数 #设定间隔几秒送一个网络封包给一台机器,预设值是一秒一次
-t 存活值 #设置存活值TTL的大小
ifconfig [网络设备] [参数] #用于配置或查看网卡接口,单独使用只显示激活状态的网络设备信息
up #启动指定网络设备/网卡
down #关闭指定网络设备/网卡,该参数可以有效阻止通过指定接口的IP信息流,如果想永久地关闭一个接口,我们还需要从核心路由表中将该接口的路由信息全部删除
-a #显示全部接口信息
-s #显示摘要信息(类似 netstat -i)
add #给指定网卡配置IP地址
del #删除指定网卡的地址
netstat [参数] #用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。
-a #显示所有连线中的Socket
-n #直接使用IP地址,而不通过域名服务器
-t #显示TCP传输协议的连线状况
-u #显示UDP传输协议的连线状况
-p #显示正在使用Socket的程序识别码和程序名称
-c #持续列出网络状态
route [选项] [参数] #用于显示和操作IP路由表
add #添加一条路由规则
del #删除一条路由规则
-net #目的地址是一个网络
-host #目的地址是一个主机
target #目的网络或主机
netmask #目的地址的网络掩码
gw #路由数据包通过的网关
dev #为路由指定的网络接口
tcpdump [参数] #可以将网络中传送的数据包的“头”完全截获下来提供分析,它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息
-i #指定监听的网络接口
-v #输出较详细的信息,例如在ip包中ttl和服务类型的信息
-vv #输出详细的报文信息
-c #在收到指定的包的数目后,tcpdump就会停止
-e #在输出行打印数据链路层的头部信息,包括源mac和目的mac,网络层协议
-f #将外部的Internet地址以数字的形式打印
-w #直接将包写入文件中,并不分析和打印出来
-X #告诉tcpdump命令,需要把协议头和包内容都原原本本显示出来(tcpdump会以16进制和ASCII的形式显示),这在进行协议分析时是绝对的利器

iptables [选项] [参数] #iptables并不是真正的防火墙,只是用来定义防火墙规则功能的“防火墙管理工具”,将定义好的规则交由内核中的netfilter即网络过滤器来读取,从而真正实现防火墙功能
-A #在指定链的末尾添加(append)一条新的规则
-D #删除(delete)指定链中的某一条规则,可以按规则序号和内容删除
-I #在指定链中插入(insert)一条新规则,默认在第一行添加
-R #修改、替换(replace)指定链中的某一条规则,可以按规则序号和内容替换
-L #列出指定链中所有规则
-E #重命名用户定义的链,不改变链本身
-F #清空
-N #新建一条用户自己定义的规则链
-X #删除指定表中用户自定义的规则链
-P #设置指定链的默认策略
-Z #将所有表的所有链的字节和数据包计数器清零
-n #使用数字的形式显示输出结果
-v #查看规则表详细信息(verbose)的信息
iperf [选项] [参数] #网络性能测试工具,可以测试最大TCP和UDP带宽性能,具有多种参数和UDP特性,可以报告带宽、延迟抖动和数据包丢失
-l #设置读写缓冲区的长度
-s #在服务器模式下运行iperf
-c #在客户端模式下运行iperf,连接到在主机上运行的iperf服务器
-p #设置端口,与服务器端的监听端口一致
-o #重定向输出到指定文件
-t #设置传输的总时间
ethtool [选项] [参数] #用于查询及设置网卡参数的命令
ethtool -i ethX #查询ethX网口的相关信息
ethtool -d ethX #查询ethX网口注册性信息
ethtool -r ethX #重置ethX网口到自适应模式
ethtool -S ethX #查询ethX网口收发包统计
ethtool -s ethX [speed 10|100|1000] #设置ethX网口速率10|100|1000M
telnet [选项] [主机名] #用来远程登录,telnet因为采用明文传送报文,安全性不好,很多linux服务器都不开放telnet服务,而改用更安全的ssh方式。telnet还可以确定远程服务的状态,比如确定远程服务器的某个端口是否能访问。
telnet [主机名] [端口] #确认主机端口是否可以访问
free [选项] #用来查看系统内存,虚拟内存的大小及占用情况
-b #以byte为单位显示内存使用情况
-k #以KB为单位显示内存使用情况
-m #以MB为单位显示内存使用情况
-g #以GB为单位显示内存使用情况
-s<间隔秒数> #持续观察内存使用情况
-t #显示内存总和列
ps [参数] #用于查看系统进程
-a #显示当前控制终端的进程(包含其他用户的)。
-u #显示进程的用户名和启动时间等信息
-w #宽行输出,不截取输出中的命令行
-l #按长格形式显示输出
-x #显示没有控制终端的进程
-e #显示所有进程
-tn #显示第n个终端的进程
kill [参数] 进程号 #前台进程在运行时,可以使用【ctrl+c】键来终止它,后台进程可以使用kill命令向进程发送强制终止信号,以达到终止进程的目的。
HUP 1 #终端断线
INT 2 #中断(同ctrl+c)
QUIT 3 #退出(同ctrl+\)
TERM 15 #终止
kill 9 #强制终止
CONT 18 #继续(与STOP相反,fg/bg命令)
STOP 19 #暂停(同ctrl+Z)
top #实时监控进程的状况
shutdown #用于在指定时间关闭系统,-h关闭计算机,-r重新启动
-h now #立即关机
-h +10 #10分钟后关机
-h 23:30 #23:30分关机
-r now #立即重启
reboot #用于重新启动系统,相当于shutdown -r now
poweroff #用于立即停止系统,并关闭电源,相当于shutdown -h now
clear #清除字符终端屏幕内容
uname #用于显示系统信息
-a #显示系统详细信息
man #用于列出命令的帮助手册
history #用于显示用户最近执行的命令,只要在命令编号前加"!",就可以重新运行history中显示出的命令行