700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 《Linux命令》常用命令-查询 替换 粘贴 复制 剪切 目录 删除 用户等操作。

《Linux命令》常用命令-查询 替换 粘贴 复制 剪切 目录 删除 用户等操作。

时间:2023-10-31 13:30:59

相关推荐

《Linux命令》常用命令-查询 替换 粘贴 复制 剪切 目录 删除 用户等操作。

抽些时间做个笔记:

#vi xxx.log

输入e

------------------vi or vim----------------------

删除行:

esc (光标行首) dd

选择:

esc Ctrl+v 左键 选择部分字符(上下键选择区域) 或 按capslook v 选择行

复制:

按shift切换为小写再按(若上一步已经按了capslook键) y

剪切:

按shift(与复制同理) d

粘贴:

按insert 选择位置 esc p (或按capslook p )

查询:

Esc / 输入关键字(注意关键字大小写敏感) 回车 n (继续向下查找) 按capslook n (向前查询)。(serarch hit BOTTOM/TOP红色提示为已查询完毕。)

替换:

替换所有(:1 即从第一行开始到最后,替换value 为 info,注意关键字大小写敏感):

:1,$s/value/info/g

替换当前行第一个 value 为 info

:s/value/info/

替换当前行所有 value 为 info

:s/value/info/g

替换第1行开始到最后一行中每一行的第一个 value 为 info

:1,$s/value/info/

替换第1行开始到最后一行中每一行所有 value 为 info :

:1,$s/value/info/g

保存:

esc :wq 回车

强制保存:

esc :wq! 回车

退出:

esc :exit 或者 Ctrl+z

------------------CPU高占用排查:------------------------

1、高cpu消耗的线程:

top -H

2、线程信息

pstree -p pid

3、查看线程详细信息:

cat /proc/进程号/task/线程号/status

4、实时显示线程:

top -H -p pid

5、进程下所有线程:

ps -efL | grep pid

-------------------------攻击排查:------------------

查看tcp链接数 :

netstat -n|grep SYN_RECV

netstat -anoe|grep 8000|wc -l 查看8000

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

netstat -n|grep TIME_WAIT|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|

------------------------磁盘沾满排查:------------------

一般是大量的小文件。

空间占用:

df -h 或 df -hi

解决方法:

1、找大于10M的文件目录

find / -type d -size +10M

2、查找文件总数:

cd /

find */ ! -type l | cut -d / -f 1 | uniq -c

3、查询data下的文件总数:

cd /data

find */ ! -type l | cut -d / -f 1 | uniq -c

直接删除节点满的文件夹:

find . -type f -exec rm {} \;

按照文件的inode节点删除文件:

find . -inum 342137 -exec rm -i {} \;

4、将/usr/local/log目录下所有10天前带"."的文件删除

find /usr/local/log -mtime +10 -name "*.*" -exec rm -rf {} \;

5、查找大于1G的文件

find /APP/istester/ -type f -size +1G

6、查找大于100M的文件:

find /APP/istester/ -type f -size +100M | xargs rm

7、查找/etc/目录下,大于20KB并且小于50KB的文件

find /etc -size +20k -a -size -50k

8、文件大小查:+2M表示>2M的文件,-2M表示<2M的文件,2M表示=2M的文件 。格式:find 路径 -size 文件大小(单位为:k,M,G)

find /etc -size +2M

9、删除:根目录下test开头文件

find / -name “test*” |xargs rm -rf

或者:

find / -name “test*” -exec rm -rf {} \;

10、文件占用:

free -m

解说:

total(总量)

used(已使用)

free(空闲)

shared(共享内存)

----------------查询磁盘状态---------------

df -h

文件夹大小:

du -sh *

文件夹大小:

ls -lh

查看端口:

netstat -anop|grep 8001

占用cpu最高线程:

top -H -p

Thread,其pid为417。

将tid换为十六进制:xid:

printf "%x n"

查询线程信息

jstack | grep nid=0x -A 10

进程无响应,使用

jstack -f

------------top参数说明:-----------------

第一行:

17:29:09表示当前时间

up 53days 系统运行时间 格式为时:分

1 users当前登录用户数

load average: 0.00, 0.01, 0.05 系统负载,即任务队列的平均长度。 三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。

第2、3行:

69 total 进程总数

2 running 正在运行的进程数

158 sleeping 睡眠的进程数

0 stopped 停止的进程数

0 zombie 僵尸进程数

0.0 us 用户空间占用CPU百分比

0.0 sy 内核空间占用CPU百分比

0.0 ni 用户进程空间内改变过优先级的进程占用CPU百分比

100.0 id 空闲CPU百分比

0.0 wa 等待输入输出的CPU时间百分比

0.0 hi 硬中断(Hardware IRQ)占用CPU的百分比

0.0 si 软中断(Software Interrupts)占用CPU的百分比

0.0 st 用于有虚拟cpu的情况,用来指示被虚拟机偷掉的cpu时间。

第4、5行:

KiB Mem: 1016168 total物理内存总量

567720 used 使用的物理内存总量

68820 free 空闲内存总量

379628 buffers(buff/cache)用作内核缓存的内存量

KiB Swap: 0 total交换区总量

0 used使用的交换区总量

0 free 空闲交换区总量

0 cached Mem 缓冲的交换区总量。

293196 avail Mem 代表可用于进程下一次分配的物理内存数量

二、进程信息:

PID 进程id

PPID 父进程id

RUSER Real user name

UID 进程所有者的用户id

USER 进程所有者的用户名

GROUP 进程所有者的组名

TTY 启动进程的终端名。不是从终端启动的进程则显示为

PR 优先级

NI nice值。负值表示高优先级,正值表示低优先级

P 最后使用的CPU,仅在多CPU环境下有意义

%CPU 上次更新到现在的CPU时间占用百分比

TIME 进程使用的CPU时间总计,单位秒

TIME+ 进程使用的CPU时间总计,单位1/100秒

%MEM 进程使用的物理内存百分比

VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

SWAP 进程使用的虚拟内存中,被换出的大小,单位kb

RES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

CODE 可执行代码占用的物理内存大小,单位kb

DATA 可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb

SHR 共享内存大小,单位kb

nFLT 页面错误次数

nDRT 最后一次写入到现在,被修改过的页面数。

S 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程

COMMAND 命令名/命令行

WCHAN 若该进程在睡眠,则显示睡眠中的系统函数名

Flags 任务标志

--------------------端口占用情况:-----------------

方法一:

lsof -i:端口号

lsof -i:8080

注解:

COMMAND:进程的名称PID

USER:进程所有者

FD:文件描述符,应用程序通过文件描述符识别该文件。如txt等

TYPE:文件类型

DEVICE:指定磁盘的名称

SIZE:文件的大小

NODE:索引节点

NAME:打开文件的确切名称

方法二:

netstat -tlunp | grep 端口号

查看8080端口:

netstat -tlunp | grep 8080

-------------------查看并杀死僵尸进程-------------------

关键字:zombie 在用top命令时出现。

1、查看有问题的进程:

ps -A|grep defunct

2、查看进程id和父进程id

ps -ef | grep defunct | more

说明:

UID:用户ID

PID:进程ID

PPID:父进程ID

3、根据父进程id来杀死僵尸进程(ppid:12211):

$ kill -9 12211

$ ps -A|grep defunct

说明:kill -9 是强制删除。必杀命令。

看所有信号:kill -l (L变小写)

-------------------资源占用--------------

1、top 排序:shift+p

2、查看文件:

free -g

3、查看进程、内存、I/O运行情况:(最后为数字1)

vmstat -n 1

4、磁盘读写量:(最后为数字1)

iostat -d 1

5、找进程(大量读写磁盘进程)(最后为英文小写L)

iotop ls -l

6、各个进程的链接总数:

netstat -aonp | grep tcp |wc -l

7、按照pid看tcp连接数 :

netstat -natp|awk '{print $7}'|sort|uniq -c|sort -rn

辅助工具:strace gdb pstack

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。