Linux 项目实用命令

总结一下Linux下常用的命令

nc

nc命令,这是Linux一般都带有的,被誉为“瑞士军刀”。windows和Linux都有,可以下载安装对应的平台工具。使用UDP和TCP协议的网络连接去读写数据,是一个稳定的后门工具。同时它也是一个功能强大的网络调试和嗅探工具。

使用格式:

nc [-options] hostname port[s] [ports] ... 连接到某个地方

nc -l -p port [options] [hostname] [port] 绑定端口等待连接

参数有下:

-e prog 程序重定向,一旦连接就执行。同时这样也有安全隐患

-i secs 延时间隔

-l 监听模式,用于入站连接

-n 制定数字的IP地址,不能用主机名

-p port 端口

-o file 记录16进制的传输

-r 任意指定本地及远程段口

-s addr 本地源地址

-u UDP模式

-v 详细输出 用两个 -v可得到更详细的内容

-w secs 超时

-z 将输入输出关掉,用于扫描

端口号可以指定单个,后者一个范围

当然nc 可以和watch命令配置动态实时监测

netstat

netstat命令用于显示各种网络相关信息,如:网络连接,路由表,接口状态多播成员等等

netstat输出结果可分为两个部分:有源TCP连接和有源Unix域套接口

有源TCP主要是用于监测网络传输相关

有源Unix用于本机通信,性能可以提高一倍

常见参数:

-a all的意思 显示所用选项,默认不显示LISTEN相关

-t tcp意思,仅显示tcp相关选项

-u udp的意思,仅显示udp相关

-n 拒绝显示的别名,能显示数字的全部转化成数字

-l 仅 列出有在listen的服务状态

-p 显示简历相关链接的程序名

-r 显示路由信息,路由表

-e 显示扩展信息

-s 按各个协议进行统计

-c 执行netstat的时间间隔

另外LISTEN和LISTENING状态只用-a 或 -l才能看到

netstat -a 列出所有端口,包括监听和未监听的

netstat -at 列出tcp端口

netstat -pt 先死PID和进程名字 (-p)

netstat -i 显示网络接口列表

可以利用watch 和 awk提取相关需要字段,用于监听

lsof

全称list open files,列出当前系统打开文件

应用程序打开文件的描述符提供了大量应用程序本身的信息,因此通过lsof工具能够查看这个列表对系统检测以及排错有很大帮助

lsof常见参数:

lsof filename 显示打开指定文件的所有进程

lsof -a 表示两个参数都必须满足时才显示结果

lsof -c string 显示COMMAND列中包含指定字符串的进程打开的描述符

lsof -u username 显示所属user进程打开的文件

lsof -g gid 显示所属gid进程情况

lsof +d /DIR/ 显示目录下被进程打开的文件

lsof +D /DIR/ 同上,但是会递归

lsof -n 不将IP转化为hostname

lsof -i 用于显示符合条件的进程情况

ls -i[46]   [protocol] [@hostname|hostaddr][:service|port]

ipv4|ipv6  TCP|UDP

lsof -i:22 查看22端口运行情况

uptime

显示结果包括服务器已经运行的时间,有多少用户登录,和对服务器性能的总体评估

load average记录了上个1,5,15分钟间隔的负载情况,表示在队列中等待执行的进程的数量,如果CPU阻塞,该值就变大

load average最佳值为1,说明每个进程都可以立刻被CU处理,多个CPU的系统中,这个值应 除以 物理CPU的个数

top

top命令显示了实际CPU的使用情况,默认5s刷新一次

PID: 进程标识

USER: 进程所有者的用户名

PRI:进程的优先级

NI: nice级别

SIZE:进程占用的内存数量,包括代码,数据,和堆栈

RSS:进程使用的物理内存数量

SHARE:该进程和其他进程共享内存的数量

STAT:进程的状态

S 休眠状态

R 运行状态

T 停止状态

D 中断休眠状态

Z 僵尸状态

%CPU:共享的CPU使用

%MEM 共享的物理内存

TIME:进程占用的CPU时间

COMMAND:启动任务的命令行,参数

iostat

iostat是sysstat包的一部分,显示系统启动后平均CPU时间与uptime类似

可以显示磁盘子系统的使用情况,iostat可以用来检测CPU利用率和磁盘利用率

%user: user level(应用)的CPU占用率情况

%nice: 加入nice优先级的user level的CPU占用率情况

%sys:system level(内核) 的CPU占用情况

%idle:空闲的CPU资源情况

Device :块设备名

Tps:设备每秒进行传输的数量(每秒的I/O请求)。多个单独的I/O请求可以被组成一个传输操作,因为一个传输操作可以是不同的容量

Blk_read/s,Blk——wrtn/s:该设备每秒读写的块数量,块可能为不同容量

Blk_read,Blk_wrtn:自系统启动以来读写的块设备总量

vmstat

vmstat命令提供了对进程、内存、页面I/O块和CPU等信息的监控,vmstat可以显示检测结果的平均值或者取样值

.process(procs)

r:等待运行时间的进程数量

b:处在不可中断睡眠状态的进程

w:被交换出去但是仍然可以运行的进程,这个值是计算出来的

.memoryswpd:虚拟内存数量

free: 空闲内存数量

buff: 用作缓冲区的内存数量

.swap

si:从硬盘交换来的数量

so:交换到硬盘去得数量

.IO

bi:向一个块设备输出的快数量

bo:从一个块设备接受的块数量

.system

in:每秒发生的中断数量,包括时钟

cs:每秒发生的context switches的数量

.cpu 整个CPU运行时间百分比

us:非内核代码运行时间(用户时间,nice时间)

sy:内核代码运行时间(系统时间)

id:空闲时间

wa:等待I/O操作时间

vmstat附加参数:

.m: 显示内核的内存利用率

.a: 显示内存页面信息,包括活跃和不活跃的内存页面

.n: 显示报头行,这个参数在使用采样模式并命令结果输出到一个文件时用

-p 分区,vmstat提供对I/O结果的统计

ps/pstree

系统分析最常用的命令,ps提供正在运行进程列表

pstree命令可以以树状结构显示所有进程信息,并且可以整合子进程信息

sar

sar程序也是sysstat安装包一部分,用于手机、报告和保存系统的信息。

sar命令三个应用组成

sar: 用于显示数据

sa1/sa2:用于搜集和存储数据

sar命令生成的数据默认保存在/var/log/sa/目录下

也可以使用sar在命令行下得到一个实时的执行结果,搜集的数据可以包括CPU利用率、内存页面、网络I/O等等呢过

sar 3 5 每个3s执行一次,执行5次sar

free

free命令显示系统的所用内存使用情况,包括空闲、被使用的和被交换的空间。

free命令显示也包括一些内核使用的缓存和缓冲区信息

参数:

-b,-k,-m,-g分别是以bytes,kilobytes,megabytes,gigabytes显示结果

-l 区别显示low和high内存

-c {count} 显示free输出的次数

pmap

pmap命令显示一个或者多个进程使用内存数量,可以使用这个工具来确定服务器上哪个进程占用了过多的内存而导致内存瓶颈

strace

strace截取和记录进程的系统调用信息,还包括进程接受的命令信号。这是一个很好的诊断和调试工具,但是需要系统管理员权限

strace -p <pid>

ulimit

可以通过ulimit来控制系统资源的使用

mpstat

mpstat命令也是sysstat的一部分。主要用于监测一个多CPU系统中每个可用CPU的情况。mpstat命令可以显示每个CPU或者所有CPU的运行情况,同时也可以像vmstat命令那样使用参数进行一定频率的采样结果监测

valgrind

内存和性能检测工具,主要用于内存泄露检测,性能检测

Linux 项目实用命令

时间: 2024-09-30 09:49:40

Linux 项目实用命令的相关文章

linux 基础实用命令整理--后续还会持续更新

监控: 百度站长工具 smokeping 开源监控,网络监控 真实机器命令监控 ipmitool 可以监控硬件信息 但是需要yum 安装 openlmpi ipmtool 查看系统模块 lsmod| grep ipmi megacli 工具查看raid 磁盘阵列状态 (需要单独安装) lscpu 查看系统cpu 信息 cpu %sys% 内核状态:进程做进程用的时候调用  %us% 用户状态:用户做进程时调用 60%-70%的比例是I/O的瓶颈 sysstat 监控性能 mpstat 监控cpu

OS--&gt;Git操作演练(项目实用命令)

竟然是命令操作,当然少不了要使用Shell. 这里推荐使用babun用来执行shell命令,下载地址:http://babun.github.io/ 1:拉取项目 git clone https://github.com/angcyo/PaintDemo.git 2:查看状态 git status //可以查看所有文件的修改状态,在进行commit操作,push操作,pull操作之前,请确保所有文件的状态都是干净的,否则会出现意想不到的错误 git add build.gradle //追踪bu

linux常用实用命令

删除一个目录下的所有文件,但保留一个指定文件:find /目录/ -type f ! name "file"|xargs rm -f 每次开机在/tmp目录下创建一个当天的日期文件夹:echo "mkdir /tmp/`date +%Y%m%d`" >> /etc/rc.d/rc.local 将/usr/local/test目录下大于100k的文件转移到/tmp目录下:find /usr/local/test -type f -size +100k -e

Linux系统实用命令总结

查看系统信息: cat /proc/version: 查看某个文件中含特定字段的信息: grep -r 'xxx' 文件/路径: 从tomcat日志中取出某个特定时间段的日志,放到某个文件中: 前提是catalina.out日志中的每行都是以日期格式开头的 sed -n '/2016-05-25 06:12:/,/2016-05-26 07:17:/p' catalina.out >wei.txt sed -n '/^2016-05-25/,/^2016-05-26/p' catalina.ou

Linux Tomcat日志查看实用命令

实用命令: 查看tomcat运行日志 tail -f catalina.out 通过关键字搜索查看日志 cat jeewx-2015-09-20.log | grep 验证码 查看固定时间日志 cat jeewx-2015-09-20.log | grep   '2015-09-20 18:50:15' 查看最近50行日志 tail -n 50 -f catalina.out Linux查看日志命令总结: cat 显示整个文件 tail tail 命令用于显示文本文件的末尾几行 head 从文本

Linux实用命令总结

Linux实用命令 1. more 翻页查看(下翻一页'空格',上一页'b',退出'q')     例如:more send.log 2 .less  翻页查看(下翻一页'空格',上一页'b',退出'q',上翻一行'?',下翻一行'?') 3. tail -10 send.log  最后10行 4. tail -f send.log 实时打印,常用于实时监控 5. tail -F nohp.log 实时打印,换文件还能打印新 6. rpm -qa | grep mysql    查看mysql安

Linux 常用命令&mdash;实用命令

Linux-常用命令 [[email protected] ~]#其中: 12345 root 当前登录用户localhost 主机名~ 当前所在目录(家目录)# 超级用户的提示符$ 普通用户的提示符 命令的基本格式 12345678910111213 命令 [选项] [参数] 注意:个别命令使用时你不遵循此格式 当有多个选项是,可以写在一起 简化选项和完整选项 例 查询目录中的内容 : ls ls [选项] [文件或目录] 选项: -a 显示所有的文件,包括隐藏的文件 -l 显示详细信息 -d

Linux基本命令及实用命令

参考:菜鸟教程-linux命令 一.基本命令 1.文本操作 grep(查询文件中的字符串) pwd(显示当前目录) cd(切换目录) cat(用于连接文件并打印到标准输出设备上) 参考菜鸟教程-Linux cat命令 tail(查看文档的尾部) -f:循环读取,我们用的最多的 -n:显示n行 mkdir(创建文件夹) -p:创建多级目录 -m:创建的时候指定权限 -v:创建目录的细节(日志) mv(可以改名,或者移动目录) cp(复制文件或文件夹) -a:复制目录下的所有内容 -d:复制时保留链

linux 性能监控-实用命令(摘抄)

1.TOP——Linux进程监控 top: linux 进行监控 运行时间 当前时间 当前登录用户数 cpu 内存 load average 系统负载 (1分钟 5分钟 15分钟[一般会小于1,高于5会硬性系统性能,需要详细查看进程) 2.VMSTAT——虚拟内存统计 Linux的vmstat命令用于显示虚拟内存统计,kernerl线程.磁盘.系统进程.I/O模块.中断.CPU活动等.默认情况下,需要在Linux系统上安装一个sysstat包才可以使用vmstat命令.. LSOF——列出打开的