云计算【第一阶段(14)】Linux的目录和结构
一、Liunx目录结构
1.1、linux目录结构
linux目录结构是树形目录结构
根目录(树根)
- 所有分区,目录,文件等的位置起点
- 整个树形目录结构中,使用独立的一个"/",表示
1.2、常见的子目录
必须知道
目录路径 | 目录作用 |
---|---|
/root | 系统管理员root的宿主目录 |
/home | 普通用户的宿主目录 |
/boot | 系统内核、启动文件存放位置 |
/dev | 设备文件存放位置 |
/etc | 配置文件存放位置 |
/bin | 所有用户可执行的命令存放位置 |
/sbin | 管理员可执行的管理命令存放位置 |
/usr | 应用程序存放位置 |
/var | 日志文件等存放位置 |
二、查看及检索文件
2.1、查看全部内容
查看文件内容cat命令
但是用这个命令在长文件会看不过来
可以使用more或者是less分页
- more命令
全屏方式分页显示文件内容
交互操作方法
按Enter键向下逐行滚动
按空格键向下翻一屏
按b键向上翻一屏
按q键退出 - less命令
与 more命令相同,但扩展功能更多
交互操作方法
page up 向上翻页,page down 向下翻页,上下键盘
按 ”/“ 键查+找内容, "n"下一个内容,"N"上一个内容
其他功能与more命令基本类似。
2.2、查看其中几条内容
查看文件内容head,tail命令 中
- head命令
head -n(n为数字) 文件名,用途:查看文件开头的一部分内容 (默认为10行)
- tail命令
用途:查看文件结尾的少部分内容 (默认为10行)
tail -n 文件名
tail -f 文件名(重要)追踪
实验一
实验二
2.3、统计文件内容
wc 命令用于统计文件内容中包含的行数、单词数、字节数等信息,使用文件名作为参数,可以同时统计多个文件
2.4、检索和过滤文件内容
grep命令
在文件中查找并显示包含指定字符串的行
grep [选项] 查找条件 目标文件
常用命令选项
-i:查找时忽略大小写
-v: 反转查找,输出与查找条件不相符的行
在维护 Linux 操作系统的过程中,经常会遇到包含大量内容的配置文件,而其中往往包含了许多空行和以“#”开头的注释文字,当只需要分析其中的有效配置信息时,这些空行和注释文字的存在不利于快速浏览。使用 grep 命令可以过滤掉这些无关信息。例如,以下操作可以显示/etc/yum.conf 文件中以“#”开头的行和空行以外的内容。
grep -v "^#" /etc/yum.conf | grep -v "^$"
^
是一个特殊字符,表示一行的开始
为什么在这两个grep
表达式中都要加^
呢?
- 对于
^#
,如果不加^
,那么任何包含#
的行都会被匹配,而不仅仅是注释行(即那些以#
开头的行)。 - 对于
^$
,这个表达式用于匹配空行。空行就是那些没有任何字符(包括空格、制表符等)的行。^
表示一行的开始,$
表示一行的结束,所以^$
就匹配那些开始和结束都在同一位置的行,即空行。
三、备份及恢复文档
3.1、压缩命令gzip,bzip2命令
gzip格式的文件通常具有.gz的后缀,gzip通常可以将纯文本内容压缩到原大小的40%左右。
bzip2通常可以将文件压缩到原始大小的10%至15%。虽然其压缩速度相对较慢,但解压速度较快,且压缩率通常高于gzip。
- 制作压缩文件
- gzip [-9] 文件名。
- bzip2 [-9]文件名。
- 解开压缩文件
- gzip -d gz格式的压缩文件 或者gunzip
- bzip2 -d bz2格式的压缩文件 或者bunzip2
1-9代表级,别默认是6级别,
使用一级别压缩比例最少但是压缩速度最快 ,九压缩比例最大但是压缩速度最慢。
3.2、xz和zip
xz
是一种高效的压缩工具,它使用LZMA(Lempel-Ziv-Markov chain-Algorithm)算法进行压缩。这种算法通常比传统的gzip压缩算法具有更高的压缩率,但压缩和解压缩速度可能较慢。
用法
- 制作压缩文件
xz [要压缩的文件]
zip -r [归档文件名.zip] [要压缩的文件或目录]
- 解开压缩文件
- unxz [要解压缩的文件] 或者 xz -d [要解压缩的文件]
- unzip [归档文件名.zip] -d [解压目录]
3.3、一些区别
- bzip2:专注于单文件压缩,不提供归档功能(即多个文件打包成一个文件),但是压缩率高,数据恢复方面也有实用性。通常与其他工具(如tar)结合使用,以创建压缩的归档文件。
- zip:除了文件压缩外,还支持归档功能,可以将多个文件和目录打包成一个单独的
.zip
文件。这使得zip在需要处理多个文件或目录的压缩场景中更加灵活(但是压缩率不如bzip2)。
以下是xz、bzip2、zip和gzip的简要区分表格:
特性 | xz | bzip2 | zip | gzip |
---|---|---|---|---|
压缩率 | 高 | 较高 | 中等 | 中等偏低 |
压缩速度 | 中等 | 较慢 | 较快 | 较快 |
解压速度 | 较快 | 较快 | 较快 | 较快 |
算法 | LZMA/LZMA2 | Burrows-Wheeler变换 + Huffman编码 | DEFLATE/LZ77等 | DEFLATE |
多文件支持 | 不支持 | 不支持 | 支持 | 不支持 |
归档功能 | 需要配合tar等工具 | 需要配合tar等工具 | 内置归档功能 | 需要配合tar等工具 |
错误修复能力 | 无特别说明 | 有一定能力 | 无特别说明 | 无特别说明 |
跨平台性 | 是 | 是 | 是 | 是 |
扩展名 | .xz | .bz2 | .zip | .gz |
典型应用场景 | 需要高压缩率,如软件分发 | 需要高压缩率,如软件分发、备份 | 归档多个文件,如文档、图片等 | 压缩单个文件,尤其是文本文件 |
请注意,这个表格是基于一般情况下的观察和比较,具体表现可能会因文件类型、文件大小、硬件性能等因素而有所不同。在选择压缩工具时,最好根据具体需求进行测试和评估。
3.4、实验
打一个文件
压缩后大小,bizp2小一些,说明压缩率高一些
扩展
- time: 这是一个shell命令,用于测量另一个命令的执行时间。当你运行
time command
时,shell会先运行command
,然后在命令完成后显示其执行时间。 -c
选项告诉gzip将输出(即压缩后的数据)直接发送到标准输出(stdout),而不是写入文件。- > 1.txt: 这是shell重定向的一个例子。
>
符号将前面命令的标准输出(stdout)重定向到一个文件。结合-c,gzip -c ceshisize.txt
的输出(即ceshisize.txt
的压缩版本)被重定向到名为1.txt
的文件中。
3.5、归档命令tar命令
归档文件通常是一个或多个文件和目录的集合,它们被打包成一个单独的文件以便于存储、传输或备份。tar
命令本身不提供压缩功能,但可以与压缩工具(如 gzip、bzip2、xz 等)结合使用以创建压缩归档文件。
- 制作归档文件
tar 【选项】 归档文件名 源文件或目录
- 释放归档文件
tar [选项】归档文件名 【c目标目录】
tar 命令主要用于对目录和文件进行归档。在实际的备份工作中,通常在归档的同时也会将包文件进行压缩(需要调用前面的 gzip 或 bzip2 命令),以节省磁盘空间。使用 tar 命令时,选项前的“-”号可以省略。常用的几个选项如下所述。
- -c:创建(Create).tar 格式的包文件。
- -C:解压时指定释放的目标文件夹。
- -x:解开.tar 格式的包文件。
- -p:打包时保留文件及目录的权限。
- -P:打包时保留文件及目录的绝对路径。
- -t:列表查看包内的文件,而不提取内容。
- -v:输出详细信息(Verbose)。
- -z:调用 gzip 程序进行压缩或解压。
- -j:调用 bzip2 程序进行压缩或解压。
- -f:表示使用归档文件,指定使用的归档文件的名称
常用的组合命令
czvf xzvf
cjvf xjvf
czf xzf
cjf xjf
3.5.1、制作归档备份文件
假设我们要创建一个 /etc 和 /opt/文件夹的归档文件,并且还希望使用 gzip 工具将其压缩。可以使用 tar 命令中的 -z
选项来实现。此类归档文件的扩展名是 tar.gz 或 tgz
需要注意的是,在备份恢复目录或文件时,最好先将工作路径切换至目标目录或文件的所在路径,然后在执行备份命令时使用相对路径,以防输入命令时因手误而导致根目录“/” 下重要文件损坏。
czvfp
当然我们还可以排除
--exclude=*.conf
那么tar -jcpvf archive.tar.bz2 /etc/ /opt/ --exclude=*.conf
3.5.2、查看列出压缩归档文件的内容
tvf
3.5.3、从归档文件中恢复数据
-x:解开.tar 格式的包文件。
-C:解压时指定释放的目标文件夹。
tar -xjvf b.tar.gz -C /kgc
在大部分的备份及恢复工作中,只使用 tar 命令就可以很好地结合 gzip、bzip2 工具协同工作,无须再执行 gzip 或 bzip2 命令。但是要注意这两个压缩工具的命令程序必须存在。
相关文章:
云计算【第一阶段(14)】Linux的目录和结构
一、Liunx目录结构 1.1、linux目录结构 linux目录结构是树形目录结构 根目录(树根) 所有分区,目录,文件等的位置起点整个树形目录结构中,使用独立的一个"/",表示 1.2、常见的子目录 必须知道 目录路径目…...
Zynq学习笔记--AXI4-Stream到视频输出IP是如何工作的?
目录 1. 简介 2. 原理详解 2.1 示例工程 2.2 AXI4-Stream to Video Out 3. Master/Slave Timing Mode 3.1 Slave Timing Mode 3.2 Master Timing Mode 4. 总结 1. 简介 本文主要介绍了 AXI4-Stream 到视频输出 的内容。其中,示例工程展示了一个具体的设计&…...
2016-2023 年美国农业部作物序列边界
简介 2016-2023 年美国农业部作物序列边界 作物序列边界(CSB)是与美国农业部经济研究局合作开发的,它提供了美国毗连地区的田间边界、作物种植面积和作物轮作的估计数据。该数据集利用卫星图像和其他公共数据,并且是开放源码的,使用户能够对美国种植的商品进行面积和统计…...
数字人源码部署怎么做?如何高效搭建好用的数字人系统?
作为人工智能时代的风口项目,AI数字人自出现之日起便引发了大量的关注。不少创业者都有了搭建数字人系统的想法,但却苦于没有强大的专业背景和雄厚资金支撑,只能在局外徘徊,而这恰恰为数字人源码公司推出的数字人源码部署服务的火…...
解决虚拟机Ubuntu IP总是掉的问题
问题 嵌入式开发过程中,需要使用NFS/TFTP等等,虚拟机Ubuntu就需要和板卡进行网络连接,但是我发现虚拟机Ubuntu的IP地址经常动不动就掉线,本文记录解决该问题的一些思路。 其实这个问题很简单,我早该想到,…...
[13] CUDA_Opencv联合编译过程
CUDA_Opencv联合编译过程 详细编译过程可见我之前的文章:Win10下OpencvCUDA联合编译详细教程(版本455、460、470,亲测可用!!!)本文给出Windows\linux下的opencvcuda的编译总结,摘自 <基于GP…...
uni-app canvas创建画布
canvasTmp: function(arr2, store_name, successFn, errFun) {let that this;const ctx uni.createCanvasContext(myCanvas);ctx.clearRect(0, 0, 0, 0);/*** 只能获取合法域名下的图片信息,本地调试无法获取* */uni.getImageInfo({ src: arr2[0],success: function(res) {…...
Spring MVC详解(上)
一、Spring MVC初步认识 1.1介绍 Spring MVC是Spring Framework提供的Web组件,全称是Spring Web MVC,是目前主流的实现MVC设计模式的框架,提供前端路由映射、视图解析等功能 Java Web开发者必须要掌握的技术框架 1.2MVC是什么 MVC是一种软件架构思想…...
【Linux硬盘读取】Windows下读取Linux系统的文件解决方案:Linux Reader4.5 By DiskInternals
前言 相信做机器视觉相关的很多人都会安装 Windows 和 Linux 双系统。在 Linux 下,我们可以很方便的访问Windows的磁盘,反过来却不行。但是这又是必须的。通过亲身体验,向大家推荐这么一个工具,可以让 Windows 方便的访问 Ext 2/3…...
操作系统—页表(实验)
文章目录 页表1.实验目标2.实验过程记录(1).增加打印页表函数(2).独立内核页表(3).简化软件模拟地址翻译 3.实验问题及相应解答问题1问题2问题3问题4 实验小结 页表 1.实验目标 了解xv6内核当中页表的实现原理,修改页表,使内核更方便地进行用户虚拟地址…...
github 本地仓库上传及报错处理
一.本地文件上传 这里为上传部分,关于gitbash安装配置,读者可自行搜索,由于已经安装完成,未进行截图保存,这里便不做赘述。 1.登录git账号并创建一个仓库 点击仓库打开后会看到这个仓库的网址链接(这个链…...
【ZZULIOJ】1104: 求因子和(函数专题)
题目描述 输入正整数n(2<n<1000),计算并输出n的所有正因子(包括1,不包括自身)之和。要求程序定义一个FacSum ()函数和一个main()函数,FacSum ()函数计算并返回n的所有正因子之和,其余功能在main()函…...
轨迹优化 | 图解欧氏距离场与梯度场算法(附ROS C++/Python实现)
目录 0 专栏介绍1 什么是距离场?2 欧氏距离场计算原理3 双线性插值与欧式梯度场4 仿真实现4.1 ROS C实现4.2 Python实现 0 专栏介绍 🔥课程设计、毕业设计、创新竞赛、学术研究必备!本专栏涉及更高阶的运动规划算法实战:曲线生成…...
【二维差分】2132. 用邮票贴满网格图
本文涉及知识点 二维差分 LeetCode2132. 用邮票贴满网格图 给你一个 m x n 的二进制矩阵 grid ,每个格子要么为 0 (空)要么为 1 (被占据)。 给你邮票的尺寸为 stampHeight x stampWidth 。我们想将邮票贴进二进制矩…...
【前端项目笔记】2 主页布局
主页布局 element-ui提供的组件名称就是它的类名 ☆☆ CSS选择器: (1)基本选择器 类型选择器 p/span/div…… 类选择器 (.classname) ID选择器 (#idname) 通配选择器 ( * ) (2)属性选择器 选择具有特定属性或属性值的…...
t265 jetpack 6 px4 ros2
Ubuntu22.04 realsenseSDK2和ROS2Wrapper安装方法,包含T265版本踩坑问题_ros2 realsense-CSDN博客 210 git clone https://github.com/IntelRealSense/librealsense.git 212 git branch 215 git tag 218 git checkout v2.51.1 219 git branch 265 git clone https://…...
vue 应用测试(一) --- 介绍
vue 应用测试(一) ---介绍 前端测试简介组件测试Jest 测试框架简介其他测试框架 第一个测试避免误报如何组织测试代码 组件挂载Vue2 组件挂载的方式Vue3 的挂载方式vue-test-utils挂载选项 如何调试测试用例参考小结 前端测试简介 软件测试:…...
Perl 语言入门学习
一、介绍 Perl 是一种高级的、动态的、解释型的通用编程语言,由Larry Wall于1987年开发。它是一种非常灵活和强大的语言,广泛用于文本处理、系统管理、网络编程、图形编程等领域。 Perl 语言的设计理念是“用一种简单的语法,去解决复杂的编…...
HarmongOS打包[保姆级]
创建应用 首先进入 华为开发者联盟-HarmonyOS开发者官网 然后进行登录。 登录成功后,鼠标悬停在在登录右上角那个位置后再点击管理中心,进入下面这个界面。 再点击:应用服务–>应用发布–>新建–>完善信息 构建和生成私钥和证书请求…...
SpringBoot怎么实现自定义接口全局异常捕获?详细教程
自定义异常 package com.single.bean;import org.springframework.core.NestedRuntimeException;public class FDWException extends NestedRuntimeException {private static final long serialVersionUID = 6046035491210083235L;public FDWException(String msg) {super(msg…...
Ms08067安全实验室成功实施多家业务系统渗透测试项目
点击星标,即时接收最新推文 近日,Ms08067安全实验室针对多家公司重要系统实施渗透测试项目。公司网络信息系统的业务应用和存储的重要信息资产均较多,存在网络系统结构的复杂性和庞杂等特点,使得公司网络信息系统面临一定风险。项…...
小熊家政帮day22-day23 订单系统优化(订单状态机、练习分库分表、索引、订单缓存)
目录 1 状态机1.1 状态机介绍1.1.1 当前存在的问题1.1.2 使用状态机解决问题 1.2 实现订单状态机1.2.1 编写订单状态机1.2.1.1 依赖引入1.2.1.2 订单状态枚举类1.2.1.3 状态变更事件枚举类1.2.1.4 定义订单快照类1.2.1.5 定义事件变更动作类1.2.1.5 定义订单状态机类1.2.1.6 状…...
LeetCode 1731, 151, 148
目录 1731. 每位经理的下属员工数量题目链接表要求知识点思路代码 151. 反转字符串中的单词题目链接标签思路代码 148. 排序链表题目链接标签Collections.sort()思路代码 归并排序思路代码 1731. 每位经理的下属员工数量 题目链接 1731. 每位经理的下属员工数量 表 表Emplo…...
Codeforces Round 953 (Div. 2)(A~D题解)
这次比赛是我最顺利的一次比赛,也是成功在中途打进前1500,写完第三道题的时候也是保持在1600左右,但是后面就啥都不会了,还吃了点罚时,虽说如此也算是看到进步了,D题学长说很简单,但是我当时分析…...
晶圆切割机(晶圆划片机)为晶圆加工重要设备 我国市场国产化进程不断加快
晶圆切割机(晶圆划片机)为晶圆加工重要设备 我国市场国产化进程不断加快 晶圆切割机又称晶圆划片机,指能将晶圆切割成芯片的机器设备。晶圆切割机需具备切割精度高、切割速度快、操作便捷、稳定性好等特点,在半导体制造领域应用广…...
39、基于深度学习的(拼音)字符识别(matlab)
1、原理及流程 深度学习中常用的字符识别方法包括卷积神经网络(CNN)和循环神经网络(RNN)。 数据准备:首先需要准备包含字符的数据集,通常是手写字符、印刷字符或者印刷字体数据集。 数据预处理࿱…...
CCF 矩阵重塑
第一题:矩阵重塑(一) 本题有两种思路 第一种 (不确定是否正确 但是100分) #include<iostream> using namespace std; int main(){int n,m,p,q,i,j;cin>>n>>m>>p>>q;int a[n][m];for(i…...
Aigtek高压放大器在柔性爬行机器人驱动性能研究中的应用
实验名称:柔性爬行机器人的材料测试 研究方向:介电弹性体的最小能量结构是一种利用DE材料的电致变形与柔性框架形变相结合设计的新型柔性驱动器,所谓最小能量是指驱动器在平衡状态时整个系统的能量最小,当系统在外界的电压刺激下就…...
Postman下发流表至Opendaylight
目录 任务目的 任务内容 实验原理 实验环境 实验过程 1、打开ODL控制器 2、网页端打开ODL控制页面 3、创建拓扑 4、Postman中查看交换机的信息 5、L2层流表下发 6、L3层流表下发 7、L4层流表下发 任务目的 1、掌握OpenFlow流表相关知识,理解SDN网络中L…...
C语言王国——数组的旋转(轮转数组)三种解法
目录 一、题目 二、分析 2.1 暴力求解法 2.2 找规律 2.3 追求时间效率,以空间换时间 三、结论 一、题目 给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。 示例 1: 输入: nums [1,2,3,4,5,6,7], k 3 输出…...
中国建设部网站关于资质/网站seo专员招聘
在做登录防止用户没有登录而访问其他web资源的时候,写了一个过滤器,却跳出not create session after the response commited,经检测,是写了多余的chain.doFilter(request,response); 即写了两次的chain.doFilter(request,respons…...
v2ray wordpress/哪里有永久免费建站
文章目录(1)什么是等待activity出现(2)wait_activity()方法(3)获取当前页面的activity方法(4)综合练习(1)什么是等待activity出现 在启动app的时候ÿ…...
中国疫情即将放开/外贸网站seo推广教程
遇到的几个问题: 1、android-ndk-r8d/build/core/build-binary.mk:41:***target file clean has both : and :: entries. Stop 解决办法:因为在libavfilter目录中的Makefile的末尾处多了Clean这个玩意儿将其注释掉或者删掉就可以了 2、parseutils.c文件多…...
怎么做免费的网站链接/襄阳seo培训
2PC Two-Phase Commit 实现分布式事务 协调者(Coordinator)组件 【事务管理器(Transaction Manager)】 1、投票(准备)阶段: 协调者发送一个“prepare”请求给所有的参与者,询问是否可…...
网页设计师培训费用图/中国seo第一人
题库来源:安全生产模拟考试一点通公众号小程序 安全员-B证(陕西省)考试题参考答案及安全员-B证(陕西省)考试试题解析由安全生产模拟考试一点通题库老师及安全员-B证(陕西省)操作证已考过的学员…...
苏州企业网站建设服务中心/东莞搜索排名提升
为什么80%的码农都做不了架构师?>>> Mybatis sql改写 近期有项目需要,需要把update转化成insert,网上搜索了下发现mybatis的拦截器可以实现该功能。 一、mybatis拦截器 实现一个拦截器拦截所有update方法 import java.sql.SQLExc…...