Linux-文件管理及归档压缩

1.根下的目录作用说明:
  1. /:Linux系统中所有的文件都在根下
  2. /bin:(二进制命令目录)存放常用的用户命令
  3. /boot:系统启动时的引导文件(内核的引导配置文件,grub配置文件,内核配置文件)
    例:kernel.grub(引导装载程序)
  4. /dev :设备文件目录(所有的设备文件都放在次目录下)比如:键盘、鼠标、声卡、显卡、磁盘
    磁盘:第一块盘/dev/sda,第二块盘/dev/sdb
  5. /etc:配置文件目录
    /etc/passwd 用户信息文件
    /etc/shadow 用户密码文件
    /etc/group 存储用户组信息
    /etc/fstab 系统开机启动自动挂载分区列表
    /etc/hosts 设定用户自己的IP与域名对应信息
    例:.conf文件是配置文件的常见扩展名,用于存储各种应用程序、服务或系统组件的配置参数
  6. /home:普通用户家目录默认存放目录(普通用户的用户文件位置,例:用户tcx,家目录为/home/tcx)–桌面文件、环境变量的配置文件、用户级别的配置文件等
  7. /lib:存放库文件(Linux库文件一般为*.so文件,Windows库文件一般为*.dll文件)
  8. /mnt/media:临时挂载光盘
  9. /opt:可选目录,有些软件包可以安装到该目录下(此目录无指定文件存放,可任意合理使用)
  10. /proc:操作系统中运行的所有程序的内存空间映射过来的(虚拟目录),不是一个真实的文件系统
  11. /sys:放硬件相关的文件
  12. /run:和/proc目录功能差不多
  13. /srv:可放置本地部署服务
  14. /sbin:放置管理员权限才能的执行的命令
  15. /tmp:存放临时文件(系统中业务运行时产生各种各样的临时文件)–不要存放重要数据!!(操作系统会自动清理该目录)
  16. /var:存放日志文件(系统运行和软件运行时产生的日志信息)
  17. /usr:存放应用程序和文件
    /usr/bin 普通用户使用的应用程序
    /usr/sbin 管理员使用的应用程序
    /usr/lib 库文件Glibc(32位)
    /usr/lib64 库文件Glibc
  18. /lib/lib64/usr/lib/usr/lib64的软连接:存放系统最基本的动态链接共享库,包含许多被/bin/sbin中的程序使用的库文件
    注:lib\*.a是静态库,lib\*.so是动态库
    静态库在编译时被加载到二进制文件中
    动态库在运行时加载到进程的内存空间中

【‌Linux系统中常用的文件后缀包括可执行文件(无扩展名)、Shell脚本(.sh)、共享库(.so)、软件包(.deb/.rpm)、配置文件(.conf)、压缩/归档文件(.tar.gz/.zip)以及各类文本和源代码文件(如.txt/.py/.c)等

2.有关文件查看命令:
  1. 查看/目录下的文件:ls /

  2. 查看文件的磁盘空间使用:df -h

  3. 查看文件内容:cat 1.txt

  4. 查看目录结构(用到tree命令(需安装):yum install -y tree)
    查看根目录: tree /

    查看第一层目录内容:tree / -L 1

3.文件的管理(增删改查):
  1. 创建文件和目录

    touch创建空文件:touch 1.txt / touch {1…10}.txt

    echo通过重定向(覆盖/追加)方式创建文件:echo hello > re.txt / echo by >> ce.txt

    vim创建文件:vim mou.txt(保存并退出,文件才会创建–否则创建不成功)

    注:创建文件时,注意用正确的文件名后缀!!!!

    mkdir创建目录(如果遇到不存在的目录,用-p进行递归创建删除文件):mkdir -p /opt/file1/file2/file3

  2. 删除文件或目录:

    rm删除文件(-r递归删除目录下的文件及文件夹,-f强制删除不提示):

    • 以file开头的所有文件:rm -rf file*
    • 单个文件:rm -rf a.txt
    • 多个文件:rm -rf a.txt dir
  3. 复制文件cp(-r 复制目录到指定目录下,无参数即复制文件):
    –将passwd文件复制到/opt/目录下:cp /etc/passwd /opt/
    –将/etc/目录移动到/opt下(使用-r):在这里插入图片描述

    –通过alias命令可知(cp命令是cp -i的别名):若想覆盖不提示可用"\"避免–\cp /etc/passwd /opt/在这里插入图片描述

  4. 移动文件mv:mv passwd /tmp/

    注:切忌乱移动系统配置文件!!!(会导致系统使用时出问题)

4.文件的查看命令:
  1. cat命令(直接输出文件内容)–标准输出:cat /etc/passwd
  2. more命令(可翻页,可检索(同下图less方法检索一样)文件内容):more /etc/passwd
    more命令上下翻页:空格键Enter键(向下翻页),B键(向上翻页)
  3. less命令(可翻页,可检索文件内容):less /etc/passwd
    less命令查看文件
    • 翻页:鼠标滚轮、键盘上下键(up、down)、空格键都可以进行翻页
    • 检索文件内容:例 匹配有for的全部内容(输入/for再按Enter键开始检索)
      在这里插入图片描述
  4. head命令(查看文件前几行):head -n 3 /etc/passwd
  5. tail命令(查看文件末尾内容–-f可实时查看文件内容):
    • 查看文件最后三行:tail -n 3 /etc/passwd
    • 不指定行数(默认查看最后10行):tail /etc/passwd
    • 实时动态查看(最新)文件内容:tail -f /var/log/secure
  6. vim查看:
    • 定位行数(例 定位到第50行):输入50,然后按大写的G键
    • 显示文件内容的行号:输入:set number,然后按Enter键
5.文件的归档和压缩(tar命令):

–归档:将多个文件打包至一个文件夹中

1).man手册查看tar使用方法man tar
2).用法tar [OPTION...] [FILE]...
参数
-c create 创建文件
-x -extract [ˈekstrækt] 提取 解压还原文件
-v --verbose 显示执行详细过程
-f --file 指定备份文件
-t --list 列出压缩包中包括哪些文件,不解包,查看包中的内容
-C (大写)--directory 指定解压位置
常用参数组合:
cvf(多个文件打包到一个文件中) 打包
xvf(将压缩包内的文件释放到指定位置中去) 解包
tvf(显示文件) 查看

3).压缩方式(以什么样的方式压缩,就要用什么样的方式解包)压缩率约大,压缩/解压缩所消耗的资源量就越多
‌ —gz 、 xz 和 bz2 是三种不同的压缩算法,它们在压缩率、速度和适用场景上有所不同。
常用参数:
-z, --gzip 以gzip方式压缩 扩展名: tar.gz(gz算法的压缩速度快,压缩率也较高,但比xz和bz2低)
-j : 以bz2方式压缩的 扩展名:tar.bz2(bz2算法的压缩率比gz高,但速度也比gz慢)
-J: 以xz 方式压缩 扩展名:tar.xz(xz算法提供了较高的压缩率,但压缩和解压速度相对较慢)

记录打包和解包执行的时间:
time tar
tar xf

#例1:创建.tar.gz 包
[root@tcx ~]# tar cvf /root/etc.tar /etc 
[root@tcx test]# tar czvf /root/etc.tar.gz /etc 	#归档,注意备份的名字后缀
[root@tcx test]# tar xzvf /root/etc.tar.gz 			#解压缩
[root@tcx test]# tar xvf /root/etc.tar.gz 			#解压缩#例2:创建.tar.bz2包
语法: #tar jcvf newfile.tar.bz2 SOURCE
[root@tcx ~]# tar -cjvf ~/etc.tar.bz2 /etc 
[root@tcx ~]# tar -xjvf ~/etc.tar.bz2 			#解压缩
[root@tcx ~]# tar -xvf ~/etc.tar.bz2 			#解压缩
[root@tcx ~]# tar xvf ~/etc.tar.bz2 -C /opt 	#解压到opt目录下#例3:创建.tar.xz包
[root@tcx ~]# tar -cJvf etc.tar.xz /etc
[root@tcx ~]# tar -xJvf etc.tar.xz 				#tar.xz 这类包,解压缩
[root@tcx ~]# tar -xvf etc.tar.xz #对比三种压缩方式后压缩比例:
[root@tcx ~]# time tar czf /root/etc.tar.gz /etc
[root@tcx ~]# time tar cjf /root/etc.tar.bz2 /etc
[root@tcx ~]# time tar cJf /root/etc.tar.xz /etc
[root@tcx ~]# ll -h etc.tar* (*为通配符,代表任意字符任意次)
-rw-r--r-- 1 0 root 28M 510 12:10 etc.tar
-rw-r--r-- 1 0 root 8.7M 510 12:14 etc.tar.bz2 		#常用
-rw-r--r-- 1 0 root 9.8M 510 12:11 etc.tar.gz 		#常用
-rw-r--r-- 1 0 root 7.0M 510 12:16 etc.tar.xz 		#这个压缩比例最高,压缩的时间是最长
5.1扩展:

1).解压指定文件到指定目录

1.执行该命令之后,系统会生成一个名为 boot.tar.gz 的压缩文件,这个文件包含了 /boot/grub2/ 目录下的所有内容
[root@tcx ~]# tar czf boot.tar.gz /boot/grub2/	
2.从 boot.tar.gz 压缩包中把 boot/grub2/grub.cfg 文件提取出来,并将其解压到 /opt 目录下
[root@tcx ~]# tar -C /opt -xvf boot.tar.gz boot/grub2/grub.cfg 
3.查看主机上 /opt/boot/grub2/ 目录的内容。
[root@tcx ~]# ls /opt/boot/grub2/

2).解压某一类型文件到指定目录(--wildcards 文件名匹配,使用通配符)

[root@tcx ~]# tar -tvf boot.tar.gz
[root@tcx ~]# tar -C /opt -xvf boot.tar.gz --wildcards *.lst

3).排除指定文件并解压

[root@tcx ~]# rm -rf /opt/boot
[root@tcx ~]# tar -C /opt -xvf boot.tar.gz boot/grub2 --exclude=boot/grub2
/i386-pc
[root@tcx ~]# ls /opt/boot/grub2/
6.zip管理压缩文件

压缩:
[root@tcx ~]# touch {1..20}.txt 创建文件
[root@tcx ~]# zip doc.zip *.txt 压缩文件

解压
[root@tcx ~]# unzip doc.zip
[root@tcx ~]# unzip doc.zip -d /tmp/ #解压到指定文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/pingmian/83801.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从零开始的python学习(七)P95+P96+P97+P98+P99+P100+P101

本文章记录观看B站python教程学习笔记和实践感悟,视频链接:【花了2万多买的Python教程全套,现在分享给大家,入门到精通(Python全栈开发教程)】 https://www.bilibili.com/video/BV1wD4y1o7AS/?p6&share_sourcecopy_web&v…

Linux 查找特定字符详细讲解

CentOS 7 中使用 grep 查找特定字符详细笔记​ 一、grep 命令概述​ grep 全称为 Global Regular Expression Print,即全局正则表达式打印,是 CentOS 7 系统中用于文本搜索的核心工具。它基于正则表达式或固定字符串,在文件、标准输入流中进…

uniappx插件nutpi-idcard 开发与使用指南(适配鸿蒙)

uniappx插件nutpi-idcard 开发与使用指南(适配鸿蒙) 前言 nutpi-idcard 是一个基于 UTS (uni-app TypeScript Syntax) 开发的 uni-app 插件适配鸿蒙,主要用于解析身份证号码,提取其中的关键信息,如地区、出生日期、性…

Grafana-ECharts应用讲解(玫瑰图示例)

工具: MySQL 数据库 MySQL Workbench 数据库管理工具(方便编辑数据) Grafana v11.5.2 Business Charts 6.6(原 Echarts插件) 安装 安装 MySQL社区版安装 MySQL Workbench安装 Grafana在 Grafana 插件中搜索 Business Charts 进行安装以上安装步骤网上教程很多,自行搜…

React状态管理Context API + useReducer

在 React 中,Context API useReducer 是一种轻量级的状态管理方案,适合中小型应用或需要跨组件共享复杂状态的场景。它避免了 Redux 的繁琐配置,同时提供了清晰的状态更新逻辑。 1. 基本使用步骤 (1) 定义 Reducer 类似于 Redux 的 reduce…

3 个优质的终端 GitHub 开源工具

1、Oh My Zsh Oh My Zsh 是一个帮助你管理和美化 zsh 终端的开源工具。它让你的终端更炫酷、更高效。安装后,你可以快速使用各种插件和主题,比如常见的 git 命令简化、支持多种编程语言工具等,每次打开终端都会有惊喜。无论你是开发者还是普…

无人机巡检智能边缘计算终端技术方案‌‌——基于EFISH-SCB-RK3588工控机/SAIL-RK3588核心板的国产化替代方案‌

一、方案核心价值‌ ‌实时AI处理‌:6TOPS NPU实现无人机影像的实时缺陷检测(延迟<50ms)‌全国产化‌:芯片、操作系统、算法工具链100%自主可控‌极端环境适配‌:-40℃~85℃稳定运行,IP65防护等…

SpringAI 1.0.0 正式版——利用Redis存储会话(ChatMemory)

官方文档:Chat Memory :: Spring AI Reference 1. 引言 SpringAI 1.0.0 改动了很多地方,本文根据官方的InMemoryChatMemoryRepository实现了自定义的RedisChatMemoryRepository,并使用MessageWindowChatMemory创建ChatMemory 2. 实现 2.1.…

RFC8489-STUN

0. 学习参考 RFC5389 中文翻译 中文RFC RFC文档 RFC翻译 RFC中文版 RFC 5389:NAT 的会话遍历实用程序 (STUN) --- RFC 5389: Session Traversal Utilities for NAT (STUN) 1. RFC 3489的演变 自 RFC 3489 发布以来的经验发现,…

开始在本地部署自己的 Gitea 服务器

0.简介 在软件开发和团队协作中,代码管理是至关重要的环节。笔者一直使用gitblit管理自己的仓库。然鹅,这个软件已经很久没有更新了。经过多方考察,发现Gitea 是一款轻量级的开源代码托管平台,具有易于部署、资源占用少、功能丰富…

Xsens-AAA工作室品质,为动画师准备

每一帧都讲述着一个故事,当动作真实呈现时,故事便鲜活起来。我们打造并改进了 Xsens Animate,助力专业人士突破数字动画的界限。 通过升级后的 Xsens Animate,您可以获得女性和男性解剖模型以及更精确的运动引擎,从一…

嵌入(Embedding)技术的实现原理与应用场景解析

嵌入(Embedding)技术的实现原理与应用场景解析 引言:从One-Hot到语义空间 在自然语言处理的演进历程中,嵌入技术(Embedding)的诞生标志着一个重要转折点——它让离散的符号表示突破了维度诅咒&#xff0c…

金仓数据库征文-金仓KES数据同步优化实践:逻辑解码与增量同步

目录 一.同步场景与方案选型 二.什么是KES 三.同步环境配置 1.前置条件验证 2.逻辑解码配置 四.同步实施与问题排查 1.结构映射规则 2.增量数据捕获 3.数据一致性校验 五.性能调优实践 1.同步线程优化 2.批量提交优化 3.资源监控指标 六.典型场景解决方案 1.双向…

开源语义分割工具箱mmsegmentation基于Lovedata数据集训练模型

开源语义分割工具箱mmsegmentation安装环境 文章目录 1、下载数据集2、整理数据集3、下载预训练模型4、测试5、训练模型参考官方数据处理步骤 https://github.com/open-mmlab/mmsegmentation/blob/main/docs/zh_cn/user_guides/2_dataset_prepare.md#loveda 数据集类别标签:…

Python概率统计可视化——概率分布、假设检验与分子运动模型

Python概率统计可视化——概率分布、假设检验与分子运动模型 前言 概率统计作为描述不确定性和随机现象的数学工具,广泛应用于物理学、生物学、经济学等领域。然而,抽象的概率分布和统计推断过程往往难以直观理解。可视化技术通过将概率密度、假设检验逻…

NLP学习路线图(二十二): 循环神经网络(RNN)

在自然语言处理(NLP)的广阔天地中,序列数据是绝对的核心——无论是流淌的文本、连续的语音还是跳跃的时间序列,都蕴含着前后紧密关联的信息。传统神经网络如同面对一幅打散的拼图,无法理解词语间的顺序关系&#xff0c…

禅道5月更新速览 | 新增交付物配置功能,支持建立跨执行任务依赖关系,研发效能平台上线

禅道体验又升级啦!禅道5月新功能合集来啦,研发效能平台与大家见面啦! 我们将继续坚持,月月有大招,迭代不停歇,快来更新禅道,体验全新的项目管理工具吧~ ​

【PDF PicKiller】PDF批量删除固定位置图片工具,默认解密,可去一般图、背景图、水印图!

PDF批量删除固定位置图片工具 PDF PicKiller <center>PDF PicKiller [Download](https://github.com/Peaceful-World-X/PDF-PicKiller)&#x1f929; 工具介绍&#x1f973; 主要功能&#x1f92a; 软件使用&#x1f92a; 参数解释&#x1f92a; 关键代码&#x1f929; 项…

kubeadm安装k8s

1、环境准备 1.1、升级系统内核 参考另一篇文章&#xff1a;https://blog.csdn.net/u012533920/article/details/148457715?spm1011.2415.3001.5331 1.2、设置Hostname cat <<EOF > /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhos…

Vue基础(14)_列表过滤、列表排序

Array.prototype.filter()【ES5】 filter() 方法创建给定数组一部分的浅拷贝&#xff0c;其包含通过所提供函数实现的测试的所有元素。 语法&#xff1a; filter(callbackFn) filter(callbackFn, thisArg) 参数&#xff1a; callbackFn(回调函数)&#xff1a;为数组中的每个元…