当前位置: 首页 > news >正文

这些Linux知识可不是靠背就会的!

在信息技术日新月异的今天,Linux以其开源、稳定、高效的特性,逐渐成为了众多专业人士的首选操作系统。然而,关于Linux知识的学习,却常常陷入一个误区——许多人认为,掌握Linux就是死记硬背各种命令和参数。这种观念,不仅忽略了Linux学习的本质,也阻碍了Linux知识的有效应用。事实上,Linux知识不是靠背,而是要在某应用场景下懂得去用。不信大家可以一起探讨下吧!

在实际应用中,Linux知识的运用远比单纯的记忆更为重要。

1、比如大家背得ls命令是用来列出文件或者目录,但是平时却很少有人结合-h和-S参数来,更便于人类识别,并且将所列出文件从大到小排序呈现。

[root@haodaolinux01 ~]# ls -lhS总用量 228M-rw-r--r--. 1 root root 228M 3月   9 03:17 haodaolinux.tar-rw-r--r--. 1 root root  73K 4月   1 2002 cmatrix-1.2a.tar.gz-rwxr-xr-x. 1 root root 4.1K 4月  19 04:05 show_basy.shdrwxrwxrwx. 2  500  500 4.0K 9月   5 2022 cmatrix-1.2a-rw-------. 1 root root 1.6K 11月  5 2021 anaconda-ks.cfg-rwxr-xr-x. 1 root root   81 9月   8 2022 test.sh-rw-r--r--. 1 root root    7 3月   8 23:20 haodao.txt-rw-r--r--. 1 root root    0 9月   8 2022 =-rwxr-xr-x. 1 root root    0 2月  24 2022 test[root@haodaolinux01 ~]#

2、比如大家背得通过ps命令来查看进程,但是却很少有人知道以下这些更适用运维场景的命令。

(1)ps命令结合相关参数及管道符,使得进程按照内存从大到小排列。
ps -e -o "%C : %p : %z : %a"|sort -k5 -nr
(2)ps命令查看的按 CPU 利用率从大到小排列的进程
ps -e -o "%C : %p : %z : %a"|sort -nr
(3)ps查找当前系统内存使用量较高的进程(前20个);
ps -aux | sort -rnk 4 | head -20
(4)ps找当前系统CPU使用量较高的进程(前20个);
ps -aux | sort -rnk 3 | head -20

3、大家都说Linux下一切皆文件,查找某个文件时犹如大海捞针,显得十分困难。但是却忽略了find命令的这些高效用法,利用好这些命令,你查找文件时,会显得一切都是手到擒来!

(1)查找当前目录下名字为haodao.py的文件;
find . -name haodao.py
(2)查找当前目录下名字以.py结尾的文件;
find . -name "*.py"
(3)查找当前目录下名字以.py结尾的文件,并且指定为文件类型搜索;
find . -type f -name "*.py"
(4)查找当前目录下名字包含haodao的目录;
find . -type d -name "haodao*"
(5)查找当前目录下文件权限为755的对应文件;
find . -type f -perm 755
(6)查找当前目录下不具有755权限的所有文件;
find . -type f ! -perm 755
(7)查找当前目录下具有777权限的所有文件,并且将这些权限全部改为755;
find . -type f -perm 777  -exec chmod 755 {} \;
(8)查找当前目录下文件大小为100MB~1GB的所有文件;
find . -type f -size +100M -size -1G
(9)查找当前目录下以.py结尾的文件,并且删除;
find . -name "*.py" -exec rm -rf {} \;

find . -name "*.py" | xargs rm -rf {};

rm -rf $(find . -name "*.py")

以上3种快速删除指定类别文件方法,哪一种更香更好用呢?

(10)查找当前目录下30天前修改过的所有文件;
find . -mtime 30
(11)查找当前目录下30天前访问过的所有文件;
find . -atime 30
(12)查找当前目录下过去1个小时内修改过的所有文件;
find . -mmin -60
(13)查找当前目录下过去1个小时内修改过的所有文件;
find . -amin -60
(14)查找当前目录下修改超过10天,但修改不到30天的所有文件;
find . -mtime +10 -mtime -30
(15)查找当前目录下7天前创建的,并且后缀名是以.py结尾的文件,并且进行删除;
find . -mtime +7  -name "*.py" | xargs rm -rf {};
(16)查找当前目录大于1000M的文件,并将该文件移动到/root/home目录下;
find . -size +1000M -exec mv {} /root/home ;
(17)查找当前目录下创建于30天前,大小大于1000M,以.py结尾的文件,并且进行删除;
find  . -name "*.py" –mtime +30 –type f –size +1000M |xargs rm –rf {};

4、大家印象中只知道cat命令可以查看文件内容,但是却很少知道cat命令还能这么用的。

(1)查看有几个逻辑cpu, 包括cpu型号;
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
(2)查看有几颗cpu,每颗分别是几核;​​​​​​​
cat /proc/cpuinfo | grep physical | uniq -c

5、当需要大文件进行某个场景测试时,好多首先想到的就是把windows上拷贝一个大文件到Linux系统,却不知道通过dd命令,只需简单命令即可实现本地创建大文件。

(1)借助dd命令生成大文件
dd if=/dev/zero of=/root/haodaolinux/test.txt bs=1M count=1024

上述命令,在/root/haodaolinux目录下生成一个文件名为test.txt 大小为 1G 的文件。​​​​​​​

6、大家都知道通过vi等编辑工具,可以编辑文件中任何内容。但是却不懂利用sed命令可以快速编辑所需的特定内容。

(1)如何通过sed命令将文件test.py中的haodao全部替换成HAODAO;
sed -i "s/haodao/HAODAO/g" test.py
(2)替换haodao.py文件中的目录;
sed -i "s:/etc/dhcp:/home:g" haodao.py

即表示将haodao.py文件中的/etc/dhcp目录替换成/home目录。

7、大家都知道tcpdump命令是用来抓包的,但是却很少有人这样高效抓包分析。

(1)针对网口ens33抓取不限制大小的报文,保存为文件haodao.cap;
tcpdump -i ens33 -s 0 -w haodao.cap
(2)针对网口ens33进行抓包,过滤出 icmp 报文并且源 IP 地址是 192.168.20.231的相关报文;
tcpdump icmp and src 192.168.20.231 -i ens33 -n
(3)针对网口ens33进行抓包,过滤出源 IP 地址是 192.168.20.231的相关报文;
tcpdump src host 192.168.20.231 -i ens33 -n -c 5
(4)针对网口ens33进行抓包,过滤出目的 IP 地址是 192.168.20.231的相关报文;
tcpdump dst host 192.168.20.231 -i ens33 -n -c 5
(5)针对网口ens33进行抓包,过滤出端口号是 8080 的相关报文;
tcpdump port 8080 -i ens33 -n -c 5
(6)针对网口ens33进行抓包,过滤出 80端口到443端口 的相关报文;
tcpdump portrange 80-433 -i ens33 -n -c 8

相关文章:

这些Linux知识可不是靠背就会的!

在信息技术日新月异的今天,Linux以其开源、稳定、高效的特性,逐渐成为了众多专业人士的首选操作系统。然而,关于Linux知识的学习,却常常陷入一个误区——许多人认为,掌握Linux就是死记硬背各种命令和参数。这种观念&am…...

openlayers 绘图功能,绘制多边形,draw组件的使用,一个简单的需求引发的思考(一)

1 需求 使用openlayers绘图功能绘制多边形 2 分析 主要是openlayers中draw功能的使用&#xff0c;感觉比较简单&#xff0c;祖传CV大法搞起来 3 实现 为了方便&#xff0c;就不加载底图了&#xff0c;直接使用绘制功能 2.1 简单实现 <template><div id"ma…...

【Flutter】 TextField限制长度时, 第三方手写输入法、ios原始拼音输入法输入被吞问题

问题描述 TextField限制长度时&#xff0c; 当你的输入字符长度已经到了最大值-1时&#xff0c;使用第三方手写输入法或者ios原生拼音输入法输入liang&#xff08;什么拼音都行&#xff0c;这里只是举例&#xff09;&#xff0c;输到i那么li都会消失。 原因分析 这是因为第三…...

快递一键查询,只需快递单号,轻松掌握全程物流信息,让您的包裹追踪无忧!

在快节奏的现代生活中&#xff0c;快递已经成为我们生活中不可或缺的一部分。无论是网购的宝贝、亲朋好友寄来的礼物&#xff0c;还是工作中的紧急文件&#xff0c;快递都承载着我们的期待和需要。然而&#xff0c;面对众多的快递公司和复杂的查询流程&#xff0c;如何快速、准…...

【Java探索之旅】继承结构 继承和组合 protected final

文章目录 &#x1f4d1;前言一、继承1.1 继承关系的代码块1.2 protected关键字1.3 继承方式1.4 final关键字1.5 继承与组合 &#x1f324;️全篇总结 &#x1f4d1;前言 在面向对象编程中&#xff0c;继承是一种重要的概念&#xff0c;它允许我们创建一个新类&#xff0c;从现有…...

Ubuntu20.04-SLAM软件安装

目录 安装环境安装问题1.Ubuntu20.04在T440p上的安装问题1.1 安装后提示"x86/cpu:VMX(outside TXT) disabled by BIOS"1.2 ACPI Error:Needed type[Reference],found [Integer] 等错误1.3 ima: Error Communicating to TPM chip1.4 locate命令的安装 2.中文输入法-go…...

OSI七层网络参考模型

一、物理层 我们要发送出去的数据在计算机里只不过是无数的0和1&#xff0c;0或1就叫做比特&#xff0c;物理层就是把这些比特用不同的媒介传输出去&#xff0c;可以用电、光或者其他形式的电磁波来表示和传输信号&#xff0c;数据从网络接口出去以后&#xff0c;会经过不同的网…...

RAG与知识库搭建

Tip: 如果你在进行深度学习、自动驾驶、模型推理、微调或AI绘画出图等任务&#xff0c;并且需要GPU资源&#xff0c;可以考虑使用UCloud云计算旗下的Compshare的GPU算力云平台。他们提供高性价比的4090 GPU&#xff0c;按时收费每卡2.6元&#xff0c;月卡只需要1.7元每小时&…...

MySQL提权之UDF提权

1、前言 最近遇到udf提权&#xff0c;几经周折终于搞懂了。感觉挺有意思的&#xff0c;渗透思路一下子就被打开了。 2、什么是udf提权 udf 全称为user defined function&#xff0c;意思是用户自定义函数。用户可以对数据库所使用的函数进行一个扩展&#xff08;windows利用…...

【设计模式】结构型设计模式之 组合模式

介绍 这里的组合模式&#xff0c;与之前的设计模式中的"组合关系"完全是两码事&#xff0c;这里的组合模式主要用来处理结构为树形的数据。 组合模式&#xff08;Composite Pattern&#xff09;是一种结构型设计模式&#xff0c;它允许你将对象组合成树状结构来表示…...

我给KTV服务生讲解防抖,他竟然听懂了

端午节三天假期&#xff0c;的最后一天&#xff0c;我和朋友闲来无事&#xff0c;想着去唱会儿歌吧&#xff0c;好久不唱了&#xff0c;于是吃了午饭&#xff0c;石景山就近找了一家KTV&#xff0c;我们团好了卷就过去了。 装修还算不错&#xff0c;很快找到服务生&#xff0c…...

抽象java入门1.3.1

前言&#xff1a; 本期内容是为了更好补充关于方法&#xff08;函数&#xff09;的定义 开始&#xff1a; 函数&#xff08;function&#xff09;表示每个输入值对应唯一输出值的一种对应关系。 核心在于&#xff1a;输入值和输出值这两个元素 真的吗&#xff1f; 错&…...

使用Rufus工具制作Ubuntu To Go——很详细

一、准备工作 准备工具&#xff1a; 1、下载Rufus(主角)软件 2、准备一个U盘&#xff08;制作启动盘&#xff0c;32G足够&#xff09; 3、准备一个U盘或硬盘&#xff08;小白128G足够&#xff0c;装Ubuntu系统&#xff09; 4、下载Ubuntu系统镜像文件 1、下载软件Rufus 先来看…...

Android Jetpack Compose 实现一个电视剧选集界面

文章目录 需求概述效果展示实现思路代码实现总结 需求概述 我们经常能看到爱奇艺或者腾讯视频这类的视频APP在看电视剧的时候都会有一个选集的功能。如下图所示 这个功能其实很简单&#xff0c;就是绘制一些方块&#xff0c;在上面绘制上数字&#xff0c;还有标签啥的。当用户…...

C++多线程并发

文章目录 C多线程并发std::chronoC中的多线程&#xff1a;std::thread主线程等待子线程结束&#xff1a;join主线程分离子线程&#xff1a;detach异步&#xff1a;std::async异步的另一种用法&#xff1a;std::launch::deferredstd::async的底层实现&#xff1a;std::promisest…...

新火种AI|摊上事儿了!13名OpenAI与谷歌员工联合发声:AI失控可能导致人类灭绝...

作者&#xff1a;小岩 编辑&#xff1a;彩云 2024年&#xff0c;OpenAI的CEO Sam Altman就没有清闲过&#xff0c;他似乎一直走在解决麻烦的路上。最近&#xff0c;他的麻烦又来了。 当地时间6月4日&#xff0c;13位来自OpenAI和Google Deep Mind的现任及前任员工联合发布了…...

Web前端后端精通:深度解析与技能进阶

Web前端后端精通&#xff1a;深度解析与技能进阶 在数字时代的浪潮中&#xff0c;Web前端后端技术的精通成为了信息科技领域的核心竞争力。本文将从四个方面、五个方面、六个方面和七个方面深入探讨Web前端后端技术的精髓&#xff0c;带领读者领略这一领域的魅力与挑战。 一、…...

【C语言】09.函数递归

递归其实是⼀种解决问题的方法&#xff0c;在C语言中&#xff0c;递归就是函数自己调用自己。 一、递归的介绍 1.1递归的思想 把⼀个大型复杂问题层层转化为⼀个与原问题相似&#xff0c;但规模较小的子问题来求解&#xff1b;直到子问题不能再被拆分&#xff0c;递归就结束…...

php高级之框架源码、宏扩展原理与开发

在使用框架的时候我们经常会看到如下代码 类的方法不会显示地声明在代码里面&#xff0c;而是通过扩展的形式后续加进去&#xff0c;这么做的好处是可以降低代码的耦合度、保证源码的完整性、团队开发的时候可以分别写自己的服务去扩展类&#xff0c;减少代码冲突等等。我自己…...

(2024,示例记忆,模型记忆,遗忘,差分评估,概率评估)深度学习中的记忆:综述

Memorization in deep learning: A survey 公和众和号&#xff1a;EDPJ&#xff08;进 Q 交流群&#xff1a;922230617 或加 VX&#xff1a;CV_EDPJ 进 V 交流群&#xff09; 目录 0 摘要 1 引言 0 摘要 深度神经网络&#xff08;DNNs&#xff09;驱动的深度学习&#xff…...

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…...

Ubuntu系统下交叉编译openssl

一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机&#xff1a;Ubuntu 20.04.6 LTSHost&#xff1a;ARM32位交叉编译器&#xff1a;arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...

UE5 学习系列(三)创建和移动物体

这篇博客是该系列的第三篇&#xff0c;是在之前两篇博客的基础上展开&#xff0c;主要介绍如何在操作界面中创建和拖动物体&#xff0c;这篇博客跟随的视频链接如下&#xff1a; B 站视频&#xff1a;s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

在四层代理中还原真实客户端ngx_stream_realip_module

一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡&#xff08;如 HAProxy、AWS NLB、阿里 SLB&#xff09;发起上游连接时&#xff0c;将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后&#xff0c;ngx_stream_realip_module 从中提取原始信息…...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表&#xff0c;若其中包含环&#xff0c;则输出环的入口节点。 若其中不包含环&#xff0c;则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中&#xff0c;元素的定位通过 position 属性控制&#xff0c;共有 5 种定位模式&#xff1a;static&#xff08;静态定位&#xff09;、relative&#xff08;相对定位&#xff09;、absolute&#xff08;绝对定位&#xff09;、fixed&#xff08;固定定位&#xff09;和…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元&#xff08;GRU&#xff09;长短期记忆神经网络&#xff08;LSTM&#xff09…...

今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存

文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...

AI病理诊断七剑下天山,医疗未来触手可及

一、病理诊断困局&#xff1a;刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断"&#xff0c;医生需通过显微镜观察组织切片&#xff0c;在细胞迷宫中捕捉癌变信号。某省病理质控报告显示&#xff0c;基层医院误诊率达12%-15%&#xff0c;专家会诊…...