一、uptime
uptime命令显示系统已经运行了多长时间,它依次显示下列信息:当前时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。
[root@localhost logs]# uptime
09:39:36 up 17 days, 17:01, 2 users, load average: 0.00, 0.02, 0.20
[root@localhost logs]# uptime -p //以比较友好的格式输出
up 2 weeks, 3 days, 17 hours, 28 minutes
[root@localhost logs]# uptime -s //系统启动时间
2018-11-01 16:38:29
【 09:39:36】是当前时间。
【up】 表示系统正在运行。
【17 days, 17:01 】 从上次启动开始系统运行的时间。
【2 users 】连接数量,,同一用户多个连接的时候算多个。
【load average: 0.00, 0.02, 0.20】是系统的负载load信息。
二、w
显示目前登录的用户及其进程,另外还会显示负载平均值。此外,它还显示了登录名称、tty名称、远程主机、登录时间、闲置时间、JCPU、PCPU、命令和进程。
参数名 | 作用 |
---|---|
-f | 开启或关闭显示用户从何处登入系统。 |
-h | 不显示各栏位的标题信息列。 |
-l | 使用详细格式列表,此为预设值。 |
-s | 使用简洁格式列表,不显示用户登入时间,终端机阶段作业和程序所耗费的CPU时间。 |
-u | 忽略执行程序的名称,以及该程序耗费CPU时间的信息。 |
三、users
显示了目前已登录的用户
四、who
返回用户名称、日期、时间和主机信息
五、whoami
输出当前用户的姓名
六、crontab
可使用crontab命令和-l选项,列出当前用户的计划任务。
七、cp
参数名 | 作用 |
---|---|
-a | 此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。 |
-d | 复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。 |
-f | 覆盖已经存在的目标文件而不给出提示。 |
-i | 与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。 |
-p | 除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。 |
-r | 若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。 |
-l | 不复制文件,只是生成链接文件。 |
cp –r test/ newtest //使用指令"cp"将当前目录"test/"下的所有文件复制到新目录"newtest"下
cp -p fileA fileB //将文件从来源拷贝到目的地,保留同一种模式
cp -i fileA fileB //覆盖文件之前系统会提示你。
八、mv
文件重命名、文件移动
mv -i fileA fileB //将fileA更名为fileB; -i选项会在覆盖前提示;如果文件已经存在,会要求予以确认
九、ssh
用来登录入到远程主机
十、ftp
ftp或sftp命令用来连接到远程ftp主机;ftp是指文件传输协议,而sftp是安全文件传输协议。
正如可以使用mput将多个文件上传到到远程主机,我们同样可以使用mget从远程主机下载多个文件。
ftp > mput *.txt
ftp > mget *.txt
十一、service
service命令调用位于/etc/init.d/目录处的脚本,并执行脚本。
service httpd start
/etc/init.d/httpd start
十二、free
free命令显示了闲置内存、总内存和交换内等方面的信息,单位是字节。
十三、top
显示了系统的处理器活动,还显示了由内核实时管理的任务,它会显示所使用的处理器和内存;如果使用带“u”选项的top命令,这会显示特定的用户进程详细信息
十四、tar
参数名 | 作用 |
---|---|
-c | 压缩 |
-x | 解压 |
-t | 查看内容 |
-r | 向压缩归档文件末尾追加文件 |
-u | 更新原压缩包中的文件 |
-z | 有gzip属性的 |
-j | 有bz2属性的 |
-Z | 有compress属性的 |
-v | 显示所有过程 |
-O | 将文件解开到标准输出 |
tar -cvf text.tar 1.txt 2.txt //将1.txt和2.txt两个文件打包成text.tar,仅打包,不压缩。
tar -zcvf text.tar.gz 1.txt 2.txt //将1.txt和2.txt两个文件打包成text.tar.gz,打包后,以gzip压缩。
tar -jcvf text.tar.bz2 1.txt 2.txt //将1.txt和2.txt两个文件打包成text.tar.bz2,打包后,以bzip2压缩。
tar -rf text.tar 3.txt //在text.tar中追加一个3.txt文件
tar -xvf text.tar //解压text包
tar -xzvf text.tar.gz //解压text.gz
tar -xjvf text.tar.bz2 //解压text.bz2
压缩包 | 方法 |
---|---|
*.tar | 用 tar -xvf 解压 |
.tar.gz和.tgz | 用 tar -xzf 解压 |
*.tar.bz2 | 用tar -xjf 解压 |
*.tar.Z | 用tar -xZf 解压 |
*.gz | 用 gzip -d或者gunzip 解压 |
*.bz2 | 用 bzip2 -d或者用bunzip2 解压 |
*.Z | 用 uncompress 解压 |
*.rar | 用 unrar e解压 |
*.zip | 用 unzip 解压 |
十五、last
观察用户在系统中的活动;该命令还可以以正常用户的身份来执行,它会显示完整的用户信息,比如终端、时间、日期、系统重启或启动以及内核版本,这是用来排查故障的实用命令。
十六、ps
ps -aux //显示所有包含其他使用者的进程
十七、kill
kill -l //列出所有信号名称
kill 进程号(ps获得) //先用ps查找进程,然后用kill杀掉
kill –9 进程号 //彻底杀死进程
kill -9 $(ps -ef | grep 用户名) //杀死指定用户所有进程
kill -u 用户名 //杀死指定用户所有进程
十八、rm
参数名 | 作用 |
---|---|
-i | 删除前逐一询问确认。 |
-f | 即使原档案属性设为唯读,亦直接删除,无需逐一确认。 |
-r | 将目录及以下之档案亦逐一删除。 |
# 将test子目录及子目录中所有档案删除,并且不用--确认 :
rm -rf test
十九、netstat
参数名 | 作用 |
---|---|
-a (all) | 显示所有选项,默认不显示LISTEN相关 |
-t (tcp) | 仅显示tcp相关选项 |
-u (udp) | 仅显示udp相关选项 |
-n | 拒绝显示别名,能显示数字的全部转化成数字 |
-l | 仅列出有在 Listen (监听) 的服務状态 |
-p | 显示建立相关链接的程序名 |
-r | 显示路由信息,路由表 |
-e | 显示扩展信息,例如uid等 |
-s | 按各个协议进行统计 |
-c | 每隔一个固定时间,执行该netstat命令。 |
# 列出所有端口
netstat -a
# 列出所有 tcp 端口
netstat -at
# 列出所有 udp 端口
netstat -au
# 只显示监听端口
netstat -l
# 显示所有端口的统计信息
netstat -s
# 显示核心路由信息
netstat -r
# 查看连接某服务端口最多的的IP地址
netstat -nat | grep "192.168.1.115:22" |awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -20
# TCP各种状态列表
netstat -nat |awk '{print $6}'
# 查找被占用的80端口
netstat -tln | grep 80
二十一、lsof
列出当前系统打开文件的工具。
参数名 | 作用 |
---|---|
lsof filename | 显示打开指定文件的所有进程 |
lsof -a | 表示两个参数都必须满足时才显示结果 |
lsof -c string | 显示COMMAND列中包含指定字符的进程所有打开的文件 |
lsof -u username | 显示所属user进程打开的文件 |
lsof -g gid | 显示归属gid的进程情况 |
lsof +d /DIR/ | 显示目录下被进程打开的文件 |
lsof +D /DIR/ | 同上,但是会搜索目录下的所有目录,时间相对较长 |
lsof -d FD | 显示指定文件描述符的进程 |
lsof -n | 不将IP转换为hostname,缺省是不加上-n参数 |
lsof -i | 用以显示符合条件的进程情况 |
# 显示与指定端口相关的网络信息
lsof -i :22
# 列出所有 tcp、udp 连接
lsof -i tcp
lsof -i udp
# 列出被指定进程名打开的文件
lsof -c ssh -c init
# 指定进程号,可以查看该进程打开的文件
lsof -p 进程号
# 杀掉某个用户所有打开的文件、设备
kill -9 `lsof -t -u 用户`
# 查看非指定用戶打开的文件
lsof -u ^用戶
# 查看指定程序打开的文件
lsof -c nginx
二十、端口被占用解决
# 查找被占用的端口
netstat -tln
netstat -tln | grep 80
# 查看端口属于哪个程序?端口被哪个进程占用
lsof -i :80
# 杀掉占用端口的进程
kill -9 进程id