文件的基本管理

目录

一、Linux系统目录结构和相对/绝对路径

(一)系统目录结构

(二)相对路径和绝对路径

1.绝对路径

2.相对路径

(三)通配符的作用

二、创建、复制、删除文件,rm -rf /意外事故

(一)创建文件夹

1.命令之------touch

2.命令之----vim

3.命令之-----mkdir

(二)删除文件和目录

(三)复制文件

(四)移动文件或文件夹

三、查看文件内容的命令

(一)du命令

(二)which命令

(三)find命令

1.按文件名称查找

2.按文件大小查找

3.按空文件查找

4.按文件类型查找

5.按inode号

6.按权限查找

7.最大搜索目录深度

8.最小搜索目录深度

9.按时间戳查找

10.处理动作


一、Linux系统目录结构和相对/绝对路径

(一)系统目录结构

在WIN系统中,查看文件要先进入相应的盘符,然后进入文件目录

在WIN中,它有很多根,例如C:\   D:\  E:\  等等,按字母排列,根后面再显示路径

Linux下只有一个根目录

使用tree命令查看,这个命令默认是没有的,需要手工安装

首先将光盘挂载到mnt下

[root@localhost /]# mount /dev/sr0 /mnt
mount: /dev/sr0 写保护,将以只读方式挂载

输入 rpm -ivh /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm 安装命令

这样命令就安装成功了,现在来查看一下

查看 / 的话,会跳出较多的信息,这里我们查看tmp来演示一下

可以看到,这些文件都是 真实存在的

知道这些以后,我们来看看重点的/

1	/	    处于Linux系统树型结构的最顶端,是Linux文件系统的入口,所有的目录都在/之下
2	/bin	bin是BIniary的缩写。常用的二进制命令目录。比如ls、cp、mkdir、cut等;和/类似,一些用 
            户级gnu工具
3	/boot	存放的系统启动相关文件
4	/dev	Device的缩写。硬件设备文件目录,如声卡、磁盘等。在Linux中一切皆文件,磁盘等设备也被看 
            做文件
5	/etc	配置文件,当前系统有哪些用户,密码信息,软件配置信息
6	/home	普通用户的家目录默认存放目录
7	/lib	库文件存放目录
8	/mnt	挂载存储设备的目录
9	/media	多媒体文件
10	/opt	空文件夹,存放后天安装的软件
11	/proc	内存环境中的程序状态
12	/sys	系统目录,存放硬件信息的相关文件
13	/run	运行目录,存放的是系统运行时的数据
14	/srv	服务目录,存放本地服务的相关文件
15	/sbin	大多数涉及系统管理的命令都存放该目录,root用户才可以执行
16	/tmp	存放临时文件
17	/var	系统运行和软件运行时产生的日志信息
18	/usr	存放应用程序和文件

(二)相对路径和绝对路径

1.绝对路径

从根开始描述文件的位置,有且唯一,无论在哪里都可以准确找到,从 / 开始 

2.相对路径

从当前路径 开始描述文件的位置,有不一定唯一,如果参照物变了就找不到文件从,或者..开始

可以看到,在opt文件夹下直接切换到images是不可以的,..表示上册目录,opt的上级目录就是根

(三)通配符的作用

通配符 : 代表了一类字符,它的作用是匹配文件的名字

?:代表任意一个单个字符

* :任意长度字符,不能显示隐藏文件

例如:

匹配以P开头的 :ls p*

匹配以conf结尾的:ls  *conf

中间包含conf的:ls *conf*

数字开头的:ls  [0-9]*

字母开头的:ls  [a-z]*

符号效果
匹配一个字符 f?.txt
*匹配所有非隐藏的字符无论多长多短,但不匹配 "." 开头的文件,即隐藏文件
{1..10}1到10
{a..z}a b c ...z
{A..Z}A B C .....Z
[123]([此处括号里值代表一个字符])取其中之一有就显示没有也无所谓
[a-z]单个小写字母范围需要注意
[0-9]单个数字匹配数字范围(0123456789)
\转义符,表示原来的意思
[[:lower:]]小写字母表示 a-z
[[:upper:]]大写字母表示 A-Z
[^zhou]匹配列表中的所有字符以外的字符
[[:digit:]]任意数字,相当于0-9
[[:alpha:]]任意字母

二、创建、复制、删除文件,rm -rf /意外事故

(一)创建文件夹

1.命令之------touch

作用:常用来创建空文件,如果有文件,则用来修改文件的时间

文件的三种时间:

访问时间:atime  查看内容   cat  a.txt

修改时间:mtime   修改内容  vim  a.txtt

改变时间:ctime    文件属性,比如权限  change time   chmod +x a.sh

语法:touch 文件名

也可以同时创建多个

语法:touch 文件名 (空格)文件名

如果想创建同名,不同序号的多个文件夹可以加上{a..k},这样相当于增加了一个变量

数字也可以

2.命令之----vim

使用vim命令创建一个新文件

输入vim god.txt 在里面输入内容后保存退出

输入cat god.txt查看一下输入的内容

3.命令之-----mkdir

作用:创建目录

语法:mkdir (选项)文件名

同时创建多个目录       

当我们想创建C目录的时候,会显示没有那个文件和目录。这是因为,我们没有a目录b目录

创建一个目录的时候,如果这个目录的上一级不存在的话,要创建父目录

这个时候需要加上 “  -p”  :parents  表示同时创建父目录,就是递归建立目录

(二)删除文件和目录

命令:rm

作用:可以删除一个目录中的一个或者多个文件或目录,对于链接文件,只删除整个链接文件,而原文件保持不变的

语法:rm 【选项】 处理对象

选项:

-f:强制删除,没有提示

-r:删除目录

(三)复制文件

命令:cp  源文件/目录   目标文件/目录

选项:-R/r:递归处理,将制定目录下的所有文件与子目录一并处理

-a:保留文件夹权限

正常cp的情况下会改变文件属性

-a 后会保留原属性

(四)移动文件或文件夹

命令:mv

语法:mv /源目录/文件  /目标目录/文件

作用:

1.源文件和目标文件路径位置一样是改名

2.源文件和目标文件路径位置不一样是移动,也可以是移动并改名

三、查找文件的命令

(一)du命令

du:disk use  查看磁盘使用量,一般用来查找大的文件夹

使用方法 du  【选项】 【文件或目录】  默认是全部显示

-a:统计磁盘占用时包括所有的文件.而不仅仅只统计目录

-h:以更人性化的方式(默认以KB计数,但不显示单位)显示出统计结果

-s:只统计所占用空间总的 (Summary) 大小,而不是统计每个子目录、文件的大小

-d  数字 代表显示层级,显示该目录下子文件夹
ll 与 du 的区别

ll看到的是真实文件的大小,du看到的是文件占了多少磁盘(4K)

(二)which命令

which:在$PATH中查找外部命令

语法:which  命令

查找ls命令,输入 which   ls 显示ls 在usr/bin/下

(三)find命令

find:查找

语法:find 【查找范围】【查找条件】【处理动作】

特点:精确查找、实时查找、支持查找条件巨多

1.按文件名称查找

-name   

根据目标文件的名称进行查找,允许使用“*”及“?”通配符  -iname "文件名称" 不区分大小写

比如要找一个boot下vm开头的文件

可以在后面加上-ls 显示信息,就是处理动作

2.按文件大小查找

-size   

根据目标文件的大小进行查找一般使用“+”、“-”号设置超过或小于指定大小作为查找条件常用的容量单位包括 kB(注意 k 是小写)、MB、GB

比如查找小于 10k 的文件  输入find /tmp -size -10k

3.按空文件查找

-empty

每个文件或者文件夹都有一个inode号,如果inode号用完,磁盘即便有空间也无法在创建文件,所以需要查找空文件进行删除

需要在命令行后面加上处理动作

4.按文件类型查找

-type   

根据文件的类型进行查找文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等

5.按inode号

-inum   

根据文件inode号查找

6.按权限查找

-perm 

 按文件权限查找

这里r=4 w=2 x=1 数字代表文件相应的权限,后面会讲到,在这里大家做个简单的了解

7.最大搜索目录深度

-maxdepth  n

将你的文件以分级的形式查找

8.最小搜索目录深度

-mindepth n

同上  

9.按时间戳查找

比如要找到一个10天以上,以log 结尾的 普通文件

输入find / -name "*log" -type f -mtime  +10

10.处理动作

-ls:显示详细信息

-delete:删除

-ok:连接find的命令与后续操作命令,会询问是否操作

它会逐条询问

-exec :与-ok作用一致,但不询问直接操作

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2022年智能算法之凌日搜索算法(TS),原理公式详解,附matlab代码

凌日搜索算法(Transit Search,TS)是一种新型元启发式优化算法,该算法基于著名的系外行星探测方法,具有寻优能力强、进化能力强、搜索速度快的特点。该成果于2022年发表在知名SCI期刊Results in Control and Optimizati…

最强的AI视频去码图片修复模型:CodeFormer

1 CodeFormer介绍 1.1 CodeFormer解决的问题 CodeFormer是由南洋理工大学-商汤科技联合研究中心S-Lab在NeurIPS 2022上提出的一种基于VQGANTransformer的人脸复原模型。该方法基于预训练VQGAN离散码本空间,改变复原任务的固有范式,将人脸复原任务转成C…

Zookeeper-集群架构

Zookeeper集群架构 集群角色 Leader: 领导者 事务请求(写操作)的唯一调度者和处理者,保证集群事务处理的顺序性;集群内部各个服务器的调度者。对于create、setData、delete等有写操作的请求,则要统一转发…

Leetcode—46.全排列【中等】

2023每日刷题(六十六) Leetcode—46.全排列 算法思想 对于排列来说,我们需要考虑数字之间的相对顺序,不同的相对顺序会产生不同的排列方式。此外,序列中的每个数字一定存在于每个排列当中。因此,不能依次…

【学习笔记】Java函数式编程02——Stream流

文章目录 三、Stream流3.1 概述3.2 快速入门3.2.1 数据准备3.2.2 场景练习3.2.2.1 场景一、遍历所有作家并打印:star:使用stream()流的forEach方法 3.2.2.2 场景二、打印所以年龄小于18的作家名字,并且注意去重:star:distinct()方法:star:filter()方法 3.2.2.3 场景…

【数据结构和算法】定长子串中元音的最大数目

其他系列文章导航 Java基础合集数据结构与算法合集 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 其他系列文章导航 文章目录 前言 一、题目描述 二、题解 2.1 方法一:滑动窗口 2.2 方法二:滑动窗口优化版 三、代码 3.1 方法一&#xf…

Python-基于fastapi实现SSE流式返回(类似GPT)

最近在做大模型对话相关功能,需要将对话内容流式返回给前端页面(类似GPT的效果)。下面直接说下如何实现: 1.首先导入fastapi和sse流式返回所需要的包 from fastapi import APIRouter, Response, status from sse_starlette.sse …

【数据结构和算法】子数组最大平均数 I

其他系列文章导航 Java基础合集数据结构与算法合集 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 其他系列文章导航 文章目录 前言 一、题目描述 二、题解 2.1 滑动窗口含义 2.2 滑动窗口一般解法 2.3 方法一:滑动窗口 三、代码 3.1 方法一&#…

数据挖掘体系介绍

数据挖掘是什么? 简而言之,对数据进行挖掘,从中提取出有效的信息。一般我们会把这种信息通过概念、规则、规律、模式等有组织的方式展示出来,形成所谓的知识。特别是在这个大数据时代,当数据多到一定程度,…

Jenkins 执行远程脚本的插件—SSH2 Easy

SSH2 Easy 是什么? SSH2 Easy 是一个 Jenkins 插件,它用于在 Jenkins 构建过程中通过 SSH2 协议与远程服务器进行交互。通过该插件,用户可以在 Jenkins 的构建过程中执行远程命令、上传或下载文件、管理远程服务器等操作。 以下是 SSH2 Eas…

用户管理第2节课--idea 2023.2 后端--实现基本数据库操作(操作user表)

一、模型user对象>和数据库的字段关联 & 自动生成 【其中涉及删除表数据,一切又从零开始】 二、模型user对象>和数据库的字段关联 2.1在model文件夹下,新建 user对象 2.1.1 概念 大家可以想象我们现在的数据是存储在数据库里的&…

HOT 100 最难的题居然是游戏厂的最爱

写在前面 翻看 网易 历年笔面题单的时候,发现一道有意思的题目。 该题评论区,网易 的踪影很少,反而被那些在 4399 笔试中遇到的同学所攻陷: 好嘛,所以这道题还是「游戏厂」的最爱?!&#x1f923…

Ubuntu 常用命令之 fdisk 命令用法介绍

fdisk 是一个用于处理磁盘分区的命令行工具,它在 Linux 系统中广泛使用。fdisk 命令可以创建、删除、更改、复制和显示硬盘分区,以及更改硬盘的分区 ID。 fdisk 命令的常用参数如下 -l:列出所有分区表-b:设置扇区大小,如果不设置,默认为 512 字节-u:改变显示/输入单位-…

亚马逊鲲鹏系统引爆广告点击率提升秘籍

在竞争激烈的电商市场,提高广告点击率成为各大卖家争相追求的目标。而如今,亚马逊鲲鹏系统的强大功能再次为卖家们打开了广告优化的新大门。其中,搜索广告功能更是成为提高关键词排名的利器。本文将详细介绍如何通过亚马逊鲲鹏系统实现点击广…

全球知名的五款JavaScript混淆加密工具详解

​ 现在市场上有很多好用的混淆加密工具,其中一些比较流行且受欢迎的工具包括: 1、UglifyJS(罗马尼亚):UglifyJS是一个非常流行的 JavaScript工具库,它可以压缩、混淆、美化和格式化 JavaScript 代码。使用…

A01、关于jvm执行子系统

1、Class 类文件结构 1.1、Java跨平台的基础 各种不同平台的虚拟机与所有平台都统一使用的程序存储格式——字节码(ByteCode)是构成平台无关性的基石,也是语言无关性的基础。Java虚拟机不和包括Java在内的任何语言绑定,它只与 “…

新三板炒股开户需要满足哪些条件?交易规则有哪些?

新三板是全国中小企业股份转让系统,属于场外市场,不能满足在主板上市的中小企业就可以申请在新三板挂牌交易。 一、新三板开通条件 新三板分为2个层级: 创新层:开通前10个交易日日均资产100万及以上,两年的股票交易经…

Jenkins 构建触发器指南

目录 触发远程构建 (例如,使用脚本) 描述 配置步骤 安全令牌 在其他项目构建完成后触发构建 描述 配置步骤 定时触发构建 描述 配置步骤 GitHub钩子触发GITScm轮询 描述 配置步骤 Poll SCM - 轮询版本控制系统 描述 触发远程构建 (例如,使…

基于SSM的双减后初小教育课外学习生活活动平台的设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

基于EasyDarwin、ffmpeg实现rtsp推流

目录 1 安装EasyDarwin 2 编译安装ffmpeg 3 启动EasyDarwin 4 ffmepg推流 5 百度网盘备份 某项目中测试时需要用到推流,于是用EasyDarwin、ffmpeg实现了RTSP推流,简单记录下过程, 1 安装EasyDarwin 这个可以去官网下载:Eas…