Linux云计算训练营笔记day05(Rocky Linux中的命令:管道操作 |、wc、find、vim)
管道操作 |
作用: 将前面命令的输出,传递给后面命令,作为后面命令的参数
head -3 /etc/passwd | tail -1 取第三行
head -8 /etc/passwd | tail -3 | cat -n 取6 7 8行
ifconfig | head -2 | tail -1 只查看IP地址
ifconfig | grep 192 过滤192的ip地址
wc是一个统计工具,可以统计文件中的行数,单词数,字符数,字节数,以及最长行的长度,分析日志文件
wc 选项 文件
echo hello world > a.txt 把hello world写入a.txt中
echo hello >> a.txt 把hello追加到a.txt中
选项:
-w 单词数 wc -w a.txt 3个单词
-l 文件的行数 wc -l a.txt 2行
cat /etc/passwd | wc -l 45行
ls /opt | wc -l 2行
ls | wc -l 查看当前的文件或者目录有多少个
-m 字符数 wc -m a.txt 18个字符 单词15个 空格算1个 换行\n算1个,一共有2个
在a.txt中输入一个中文字符,-c 字节数 wc -c a.txt 一个汉字是三个字节
UTF-8 编码 通常使用 3 个字节来表示
GBK 通常使用 2 个字节来表示
L 最长行的长度 wc -L a.txt 11个(hello world)不涉及换行
Linux中大多数的配置文件都是以#开头,这个叫注释
显示配置文件有效信息(去除注释 以#开头, 去除空行 ^$ )
grep -v ^# /etc/login.defs | grep -v ^$ | cat -n > a.txt
把/root/.bashrc配置文件中的有效信息保存到gongli.txt中
grep -v ^# /root/.bashrc | grep -v ^$ > gongli.txt
练习:
1)创建目录 /study/nsd01
mkdir -p /study/nsd01
2)在 /study/nsd01 创建文件abc.txt,利用echo 写入内容 abc.tedu.cn
echo abc.tedu.cn > abc.txt
3)将/study/nsd01/abc.txt 文件复制到/opt目录下,同时改名为test.txt
cp /study/nsd01/abc.txt /opt/test.txt
4)使用vim修改文件/etc/hostname,删除原来内容,写入www.sina.com
echo www.sina.com > /etc/hostname
5)将/etc/passwd,/etc/hostname,/etc/hosts同时拷贝到/study/nsd01
cp /etc/passwd /etc/hostname /etc/hosts /study/nsd01
6)将文件/study/nsd01/hostname 重命名为host.txt
mv /study/nsd01/hostname /study/nsd01/host.txt
7)把目录/boot内容中以vm开头的数据复制到/root/vm目录下(自己创建vm目录)
mkdir /root/vm
cp /boot/vm* /root/vm
8)将/home 目录复制到/root/vm目录下
cp -r /home /root/vm
9)创建/root/boothome与/root/usrsbin目录
mkdir /root/boothome /root/usrsbin
10)打包/boot和/home这两个文件夹,压缩包名字为boothome.tar.gz
tar -czf boothome.tar.gz /boot /home
11)打包/usr/sbin目录,压缩包名字为usrsbin.tar.bz2
tar -cjf usrsbin.tar.bz2 /usr/sbin
12)解压boothome.tar.gz到/study/nsd01
tar -xf boothome.tar.gz -C /study/nsd01
find 精确查找
find 目录 条件
条件
-type 类型 (f 文件 d目录 l快捷方式)
find /boot -type d
touch /opt/a.txt
touch /opt/b.txt
mkdir /opt/nsd
find /opt -type f
-name 名字
find /etc -name "passwd"
find /etc -name "*tab"
find /etc -name "*tab" | cat -n
find /etc -name "*.conf"
find /etc -name "*.conf" | wc -l
find /root -name ".*" 查找隐藏数据
两个条件一起使用:
mkdir /mnt/cbd01
mkdir /mnt/cbd02
touch /mnt/cbd03.txt
find /mnt -name "cbd*"
find /mnt -name "cbd*" -type d 两个必须都满足
find /mnt -name "cbd*" -type f 两个必须都满足
find /mnt -name "cbd*" -o -type f 两个满足其中一个
-size 大小 + -
ls -lh /boot
find /boot -size +1M 大于1M的数据
find /boot -size +1M -size -10M 1M到10M之间的数据
-user 用户名,按照数据的所有者
find /home -user nsd 普通用户的名字
-mtime 修改时间(所有的时间都是过去时间)
+90 90天之前修改过的数据
-10 最近10天之内修改过的数据
/var 存放经常变化的数据,日志文件
find /var -mtime +90 三个月之前的数据
-newermt 在此时间之后
! -newermt 在此时间之前 , 不写年月日则表示今天
find /var -newermt '2025-5-8 15:28:50'
find /var -newermt '2025-5-8 10:30:50' ! -newermt '12:30:50'
find高级使用
处理find找到的数据,每查找一个就传递一次
find [范围] [条件] -exec 处理命令 {} \;
-exec 额外操作的开始
{} 前面find查找的结果
\; 额外操作的结束
find /boot -size +10M -exec cp {} /opt \;
find /boot -size +10M -exec ls -lh {} \;
两个条件联合使用
mkdir /root/mytab
find /etc -name "*tab" -type f -exec cp {} /root/mytab \;
案例:
利用find查找,数据的所有者为student,并且必须是文件,把他们拷贝到/root/findfiles目录中
useradd student 添加student用户
mkdir /root/findfiles
find / -user student -type f -exec cp {} /root/findfiles \;
/proc: 内存的数据,不占用硬盘空间
红帽RHCSA题目:
1.查找属于 jacques 用户所属文件,并拷贝到/root/findfiles 目录
useradd jacques 添加student用户
mkdir /root/findfiles
find / -user jacques -type f -exec cp {} /root/findfiles \;
2.查找文件 /usr/share/xml/iso-codes/iso_639_3.xml 中包含字符串 ng 的所有行。将所有这些行的副本按原始顺序放在文件 /root/list 中。/root/list 不得包含空行且所有行必须是 /usr/share/xml/iso-codes/iso_639_3.xml 中原始行的确切副本
grep ng /usr/share/xml/iso-codes/iso_639_3.xml > /root/list
3.创建一个名为/root/backup.tar.bz2的tar存档,其应包含/usr/local的tar存档,其应包含/usr/local的内容。该tar存档使用bzip2进行压缩。
tar -cjf /root/backup.tar.bz2 /usr/local
vim 文本编辑器
cp /etc/passwd user
vim user
命令模式
yy 复制一行 p粘贴
10yy复制十行
dd 删除1行
10dd 删除10行
G 跳转到末尾
gg 跳转到首行
/a 查找字符串a
n 跳到下一个结果
N 跳到上一个结果
u 撤销
ctrl +r 取消上一次撤销
ZZ 保存修改并退出
插入模式
自己随便写东西
末行模式
:set nu 显示行号
:set nonu 关闭行号
:set ai 启用缩进
:set noai 关闭自动缩进
相关文章:
Linux云计算训练营笔记day05(Rocky Linux中的命令:管道操作 |、wc、find、vim)
管道操作 | 作用: 将前面命令的输出,传递给后面命令,作为后面命令的参数 head -3 /etc/passwd | tail -1 取第三行 head -8 /etc/passwd | tail -3 | cat -n 取6 7 8行 ifconfig | head -2 | tail -1 只查看IP地址 ifconfig | grep 192 过滤192的ip…...

diy装机成功录
三天前,我正式开启了这次装机之旅,购入了一颗性能强劲的 i5-12400 CPU,一块绘图能力出色的 3060ti 显卡,还有技嘉主板、高效散热器、16G 内存条、2T 固态硬盘,以及气派的机箱和风扇,满心期待能亲手打造一台…...
Flink 实时数据一致性与 Exactly-Once 语义保障实战
在构建企业级实时数仓的过程中,“数据一致性” 是保障指标准确性的核心能力,尤其是在金融、电商、医疗等对数据敏感度极高的场景中。Flink 作为流批一体的实时计算引擎,其内建的 Exactly-Once 语义为我们提供了强有力的保障机制。本篇将围绕如何实现端到端的数据一致性、如何…...
两个数组的交集(暴力、set、哈希)
一.题目 给定两个数组 nums1 和 nums2 ,返回 它们的 交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 示例 1: 输入:nums1 [1,2,2,1], nums2 [2,2] 输出:[2]示例 2: 输入…...

【 Redis | 实战篇 缓存 】
目录 前言: 1.认识缓存 2.添加Redis缓存 2.1.根据id查询商铺缓存 2.2.优化根据id查询商铺缓存 3.缓存更新策略 3.1.三种策略 3.2.策略选择 3.3.主动更新的方案 3.4. Cache Aside的模式选择 3.5.最佳实践方案 4.缓存三大问题 4.1.缓存穿透 4.1.1.介绍 …...

2025年全新 GPT 4.5 AI 大模型 国内免费调用
一、中转账号注册 第一步:打开宙流AI中转站,网站地址如下: 宙流AI中转站 按照上图中的操作步骤,通过邮箱进行账号注册,注册完毕后,网站初始会分配0.4刀的免费额度,获取额度后,即可…...

“睿思 BI” 系统介绍
“睿思 BI” 商业智能系统是由成都睿思商智科技有限公司自主研发的企业数据分析系统,以下是对该系统的详细介绍: 功能模块 : • 数据集成与准备 :支持数据导入、数据填报、数据 ETL 等功能,可抽取企业在经营过程中产生…...
《C++探幽:模板从初阶到进阶》
文章目录 :red_circle:一、模板基础:开启泛型编程之门(一)泛型编程的必要性(二)函数模板1. 函数模板概念2. 函数模板定义格式3. 函数模板原理4. 函数模板实例化5. 模板参数匹配原则 (三)类模板1…...
【Elasticsearch】在kibana中能获取已创建的api keys吗?
在 Kibana 中,目前没有直接的界面功能可以列出或查看已创建的 API 密钥(API keys)。 API 密钥的管理和查看主要通过 Elasticsearch 的 REST API 来完成,而不是通过 Kibana 的管理界面。 在 Kibana 中使用 Dev Tools 查看 API 密钥…...
Spring事务管理实现机制
Spring通过一系列精妙的抽象和实现来完成事务的融入、挂起和嵌套操作。下面我将详细解析Spring如何实现这些事务行为。 1. 核心组件 Spring事务管理的核心组件包括: PlatformTransactionManager:事务管理器的抽象接口 TransactionDefinitionÿ…...
[面试]SoC验证工程师面试常见问题(七)低速接口篇
SoC验证工程师面试常见问题(七)低速接口篇 摘要:低速接口是嵌入式系统和 SoC (System on Chip) 中常用的通信接口,主要用于设备间的短距离、低带宽数据传输。相比高速接口(如 PCIe、USB 3.0),低速接口的传输速率较低(通常在 kbps 到几 Mbps 范围),但具有简单…...

虚假AI工具通过Facebook广告传播新型Noodlophile窃密木马
网络安全公司Morphisec的研究人员发现,攻击者正利用虚假人工智能(AI)平台传播名为Noodlophile Stealer的新型信息窃取木马。这种复杂攻击手法利用AI工具的热度诱骗用户下载恶意软件,窃取浏览器凭证、加密货币钱包,并可…...
【Qt】之【Bug】点击按钮(ui->pushButton)触发非本类设置的槽函数
解决 先说解决办法,按钮在ui为默认命名ui->pushButton,后面改了下按钮名为该按钮的功能相关,就不会随意触发其他槽函数了。 没想到是这个原因。。。 可能是之前默认的objectName与旧的槽函数自动连接了 记录一下,找了好久其他的原因。 以…...
Metasploit 4.22.7:企业级渗透测试新突破
前言 Metasploit作为全球最受欢迎的渗透测试框架,其最新版本4.22.7-2025050101带来了企业级开发的全新可能。 本文将从框架基础架构、模块类型与开发规范入手,逐步深入企业级功能如MetaModules任务重放和自动化测试,最终通过实战案例展示如何利用最新功能开发高效漏洞利用模…...
【LeetCode 热题 100】215. 数组中的第K个最大元素(Python 快速选择详解)
在刷 LeetCode 的过程中,“第K大”是一个非常高频的考点,而题目 215. 数组中的第K个最大元素 就是经典代表。这道题不仅考察我们对排序的理解,还挑战我们写出时间复杂度为 O(n) 的算法。 本文将带你深入理解并实现一个基于快速选择ÿ…...

麦科信获评CIAS2025金翎奖【半导体制造与封测领域优质供应商】
在苏州举办的2025CIAS动力能源与半导体创新发展大会上,深圳麦科信科技有限公司凭借在测试测量领域的技术积累,入选半导体制造与封测领域优质供应商榜单。本届大会以"新能源芯时代"为主题,汇集了来自功率半导体、第三代材料应用等领…...

指针运算典型例题解析
1.题目1 该代码运行的结果是什么? #include <stdio.h> int main() { int a[5] { 1, 2, 3, 4, 5 }; int *ptr (int *)(&a 1); printf( "%d,%d", *(a 1), *(ptr - 1)); return 0; } 解析: 运行结果: 2.题目2 在X86…...

DAX 权威指南1:DAX计算、表函数与计算上下文
参考《DAX 权威指南 第二版》 文章目录 二、DAX简介2.1 理解 DAX 计算2.2 计算列和度量值2.3 变量2.3.1 VAR简介2.3.2 VAR的特性 2.4 DAX 错误处理2.4.1 DAX 错误类型2.4.1.1 转换错误2.4.1.2 算术运算错误2.4.1.3 空值或 缺失值 2.4.2 使用IFERROR函数拦截错误2.4.2.1 安全地进…...

使用 NV‑Ingest、Unstructured 和 Elasticsearch 处理非结构化数据
作者:来自 Elastic Ajay Krishnan Gopalan 了解如何使用 NV-Ingest、Unstructured Platform 和 Elasticsearch 为 RAG 应用构建可扩展的非结构化文档数据管道。 Elasticsearch 原生集成了行业领先的生成式 AI 工具和提供商。查看我们的网络研讨会,了解如…...

20250508在WIN10下使用移远的4G模块EC200A-CN直接上网
1、在WIN10/11下安装驱动程序:Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip 2、使用移远的专用串口工具:QCOM_V1.8.2.7z QCOM_V1.8.2_win64.exe 3、配置串口UART42/COM42【移远会自动生成连续三个串口,最小的那一个】 AT命令…...

C++(6):逻辑运算符
目录 1. 代码示例 示例 1:基础用法 示例 2:条件判断 2. 短路求值(Short-Circuit Evaluation) 代码示例 3. 实际应用场景 场景 1:输入合法性验证 场景 2:游戏状态判断 4. 注意事项 逻辑运算符用于组…...

NXP iMX8MP ARM 平台多屏幕克隆显示测试
By Toradex秦海 1). 简介 NXP i.MX8MP ARM SoC 支持 3 路 Display Controller 分别提供 DSI/HDMI/LVDS 显示输出,在 Yocto Linux BSP 下采用 Wayland Backend 基于 DRM subsystem 显示驱动,前端默认基于 Weston Compositor。因此在默认情况下连接多个屏…...
探秘 Canva AI 图像生成器:重塑设计创作新范式
Canva 凭借简洁易用的界面和海量模板资源,早已成为设计师和普通用户的心头好。而 Canva AI 图像生成器的推出,更是为设计领域带来了一场深刻变革,以智能化的手段重塑了图像创作的方式与边界。 技术内核:AI 如何驱动图像生成 Can…...

【数据结构】——栈
一、栈的概念和结构 栈其实就是一种特殊的顺序表,其只允许在一端进出,就是栈的数据的插入和删除只能在一端进行,进行数据的插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的元素遵循先进后出LIFO(Last InFirst O…...

Navicat中保存的数据库密码找回 Java 8
导出数据库连接打开导出的connections.ncx文件找到加密的password放入java程序中解密即可 package com.asia.card.cloud.enterprise.api;import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.SecretKeySpec; import java.nio.cha…...
构件是一个逻辑概念,还是一个物理概念?
在软件架构中,构件(Component)既可以是逻辑概念,也可以是物理概念,具体取决于上下文和系统设计的需求。以下是两种视角的详细分析: 1. 逻辑概念(抽象层面) 定义:构件是系统功能的逻辑划分,表示一组相关的职责或行为,不直接对应物理实现。 …...

vs code管理员权限启动问题
vs code非管理员启动可以正常启动用管理员启动vs code,会提示 解决办法 找到argv.json文件在argv.json文件中添加 "disable-chromium-sandbox": true重启vs code即可...

Spring Cloud与Service Mesh集成:Istio服务网格实践
文章目录 引言一、Spring Cloud与Service Mesh概述二、Istio服务网格架构三、Spring Cloud与Istio集成的基础设施准备四、服务发现与负载均衡五、流量管理与弹性模式六、安全通信与认证授权七、可观测性集成八、配置管理集成总结 引言 微服务架构已成为现代分布式系统的主流设…...
20250510-查看 Anaconda 配置的镜像源
打开 Anaconda Prompt 查看 Anaconda 当前配置的镜像源,使用命令 conda config --show channels这将显示当前配置的通道(channels),即镜像源列表。 此外,还可以使用 conda config --show命令来显示conda的配置信息&…...

React+Taro选择日期组件封装
话不多说,直接上效果 1.页面渲染时间模块 {this.renderCalendarPopup()}2.引入时间组件弹层,state中加入showPopup(控制什么时候展示时间选择弹层),time(选择后的时间值) private renderCalendarPopup () > {const { showPopup, time…...