【面试题】Linux指令

学到老,活到老~


前言

在面试过程中,命令行针对日志的操作是高频的问题,今天我们就来彻底解决这个问题。


Linux常用指令

ls:列出目录下的文件和子目录。
在这里插入图片描述

cd:切换当前工作目录。
在这里插入图片描述

mkdir:创建一个新的目录。
在这里插入图片描述

rm:删除一个文件或目录。
在这里插入图片描述

cp:复制一个文件或目录。

  1. cp file1 file2:将file1复制到file2。
    在这里插入图片描述

  2. cp -r dir1 dir2:将dir1目录及其内容递归地复制到dir2。
    在这里插入图片描述

  3. cp -i file1 dir1:将file1复制到dir1,如果dir1目录下已存在同名文件,则提示用户选择是否覆盖。
    在这里插入图片描述

  4. cp -a dir1 dir2:将dir1目录及其内容递归地复制到dir2,并保留所有文件属性(包括权限、时间戳等)。

  5. cp -v file1 dir1:将file1复制到dir1,并显示每个成功复制的文件名。

mv:移动一个文件或目录,或者更改它的名称。
相当于剪切

mv file1 file2:将file1重命名为file2。
mv file1 dir1:将file1移动到dir1目录下,同时保留原始文件名。
mv -i file1 dir1:将file1移动到dir1目录下,如果dir1目录下已存在同名文件,则提示用户选择是否覆盖。
mv dir1 dir2:将dir1目录重命名为dir2。
mv -v file1 dir1:将file1移动到dir1目录下,并显示每个成功移动的文件名。

在这里插入图片描述

cat:连接文件并打印到标准输出设备上。
在这里插入图片描述

grep:在文件中查找指定的字符串。

在文件中查找指定字符串
在这里插入图片描述
在指定目录及其子目录下,找寻指定字符串
在这里插入图片描述

find:在文件系统中查找文件。

在这里插入图片描述
chmod:修改文件或目录的权限。
使用格式为

chmod [选项] 模式 文件名

模式由三个数字组成,分别表示所有者权限,群组权限,及其他用户权限。

数字描述
0没有权限
1执行权限
2写权限
3写和执行权限
4读权限
5读和执行权限
6读和写权限
7读、写和执行权限

如下图,修改X1.txt的访问权限。
在这里插入图片描述

chown:修改文件或目录的所有者。

ps:列出系统中运行的进程。

ps aux

在这里插入图片描述

top:实时显示系统中进程的资源占用情况。
如下图,直接输入top即可

在这里插入图片描述

ping:测试与另一台计算机之间的网络连接。

ssh:远程登录到另一台计算机。

scp:在本地和远程计算机之间复制文件。

tar:将多个文件和目录打包成单个文件,可以进行压缩。
将多个文件归档

tar -cf 归档文件名 文件名

在这里插入图片描述
在已有归档里添加新文件

tar -rf 归档文件名 添加文件名

在这里插入图片描述
查看归档文件中的文件列表

tar -tf 归档文件名

在这里插入图片描述

zip: 压缩文件或目录

zip zipfile.zip file1.txt file2.txt directory1/

unzip:解压缩zip文件。

df:显示磁盘空间使用情况。

du:显示目录或文件的大小。

tail: 查看日志
在这里插入图片描述
less: 分页查看日志或搜索日志
less是一个Linux中非常有用的命令,它可以让用户在终端中查看文件内容,支持向前/向后翻页、跳转、搜索等操作。下面介绍一些less的常见使用方法:

查看文件:less filename
这个命令会在终端中打印出filename文件的内容,并且允许你向上/向下翻页。
在这里插入图片描述

向前/向后翻页:空格键(向前翻页)和b键(向后翻页)
按下空格键或b键可以向前/向后翻一页。

跳转到文件开始或结束处:g键或G键
按下g键将跳转到文件的开始处,按下G键将跳转到文件的结尾处。

跳转到特定行:输入行号+回车键
在less中输入一个数字并按下回车键,将跳转到该行。

搜索文本:输入"/" + 匹配模式 + 回车键
在less中输入"/"加上想要搜索的模式,并按下回车键将进行文本搜索。

退出less:q键
在less中按下q键可以直接退出该程序。

这些是less的一些常用命令,其他的命令可以通过输入"h"获取帮助信息来学习。

1. 查看日志文件内容

1.1 cat

使用cat命令可以显示整个日志文件的内容,适用于文件较小的情况。

cat +文件路径

在这里插入图片描述

1.2 less

使用less命令可以逐页查看大型日志文件,并支持上下滚动、搜索等操作。
常用的less命令选项包括:

-N:显示每行的行号。

less -N 文件路径

/ :搜索

less 文件名
/要搜索的字段

-i:搜索时忽略大小写。

less -i 文件路径

-F:当文件内容较短时,不显示提示。
/pattern:在文件中向下搜索指定模式。
?pattern:在文件中向上搜索指定模式。
n:重复上一次搜索。
N:反向重复上一次搜索。
G:跳转到文件末尾。
g:跳转到文件开头。
q:退出less。

1.3 tail

tail 文件路径

使用tail命令可以查看日志文件的末尾内容,常用于实时监控日志的更新。

1.4 grap

使用grep命令可以根据关键字过滤日志文件,只显示包含指定关键字的行。

grep "关键字段" 文件路径

在这里插入图片描述

2. 删除日志文件

rm 文件路径

使用rm命令可以删除指定的日志文件。

3. 分析日志文件(搜索,查看,处理)

在Linux中,分析日志文件可以使用以下几个常用的命令和工具:

grep命令:用于在文件中搜索匹配指定模式的行。
示例:grep “error” logfile.txt - 在日志文件中搜索包含"error"关键字的行。

tail命令:用于查看文件的末尾内容,常用于实时查看日志文件。
示例:tail -f logfile.txt - 实时查看日志文件的末尾内容。

awk命令:用于按指定规则处理文件,特别适合处理结构化的日志文件。
示例:awk ‘/error/ {print $2}’ logfile.txt - 提取包含"error"关键字的行的第二个字段。

sed命令:用于处理和转换文件内容,例如替换、删除或插入文本。
示例:sed ‘s/error/ERROR/g’ logfile.txt - 将日志文件中的所有"error"替换为"ERROR"。
在这里插入图片描述
替换字符串:(s/g)
sed ‘s/old_string/new_string/g’ filename
将文件中所有的 old_string 替换为 new_string。

删除行:(d)
sed ‘/pattern/d’ filename
删除文件中包含指定模式 pattern 的所有行。

显示特定行:(-n, p)
sed -n ‘2p’ filename
只显示文件中的第二行。

添加和插入行:
sed ‘3a\New line after line 3’ filename
在文件的第三行后面添加一行。
sed ‘2i\New line before line 2’ filename
在文件的第二行前面插入一行。

保存修改到原文件(in-place编辑):
sed -i ‘s/old_string/new_string/g’ filename
直接在文件中进行替换,不输出到终端。

使用多个编辑命令:
sed -e ‘s/pattern1/replace1/’ -e ‘s/pattern2/replace2/’ filename
使用多个编辑命令,每个命令用 -e 分隔。
journalctl命令:用于查看系统日志,特别适用于系统服务的日志查看。
示例:journalctl -u service-name - 查看指定服务的日志。

性能测试 压缩,解压缩

  1. 压缩,tar -zcvf 压缩后的文件名 1.txt 2.txt 3.txt
  2. 解压缩,tar -xvf 被解压缩的文件名 -C/存放文件的路径

进程和端口管理

查看当前系统正在运行的进程

  1. ps -ef
  2. ps aux

查看端口的具体服务

  1. netstat -ntulp | grep 端口号,根据端口号,查询进程号
  2. ps -aux | grep 进程号,查询具体的进程服务

服务器层监控

查看系统整体的CPU和内存的使用情况

top
VIRT为虚拟内存,RES为物理内存

查看系统内存使用情况

free -m

系统核心指标- CPU进程数,可用内存数,CPU时间消耗

vmstat 1,每秒输出一次统计信息
r,CPU进程数
free,可用内存
us, sy, id, wa, st, 用户时间,系统,空闲时间,等待时间,额外消耗的时间
si, so 交换区写入和读出的数量

输出日志最后10行

dmesg | tail

磁盘IO情况

iostat -xz 1
r/s, w/s, rKB/s, wKB/s,每秒读写次数以及读写量
await,IO操作平均等待时间
%util,设备利用率,设备的繁忙程度,超过60,影响IO性能
avgqu-sz,向设备发出的请求的平均数量,若大于1,硬件设备已经饱和

网络设备的吞吐量(设备能接受的最大数据传输速率Mbit/s)

sar -n DEV 1
rxpck/s, txpck/s, rxKB/s, txKB/s,每秒收发的数据包数量及大小
rxcmp/s, txcmp/s,每秒收发的压缩包
rxmcst/s,每秒接收的多播数据包

查看TCP连接状态

sar -n TCP,ETCP 1
active/s,每秒发起的TCP连接数,connect
passive/s,每秒远程发起的TCP连接数,accep

ETCP可查看错误统计
atmptf/s,每秒重传失败数
estres/s,每秒断开连接数
retrans/s,每秒重传数
isegerr/s,每秒错误数

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值