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

【Linux快速入门】文件目录操作

在这里插入图片描述

文章目录

  • 概念
  • 1. Linux文件系统概述
  • 2. Linux文件目录结构
  • 3. Linux文件和目录操作
    • 3.1 文件操作
      • 3.1.1 创建文件
      • 3.1.2 复制文件
      • 3.1.3 移动文件
      • 3.1.4 删除文件
      • 3.1.5 查看文件
      • 3.1.6 输出指令
      • 3.1.7 >和>>指令
    • 3.2 目录操作
      • 3.2.1 创建目录
      • 3.2.2 复制目录
      • 3.2.3 移动目录
      • 3.2.4 删除目录
  • 4. Linux文件和目录权限控制
    • 4.1 查看文件和目录权限
    • 4.2 更改文件和目录权限
    • 4.3 更改文件和目录所有者和所属组
  • 5. Linux文件和目录搜索
    • 5.1 find命令
    • 5.2 grep命令
  • 6. 总结

概念

Linux是一款非常流行的操作系统,它拥有着强大的文件系统和目录结构。这些文件和目录在Linux系统中扮演着非常重要的角色,因为它们是系统的基础。在本篇博客中,我们将探讨Linux文件目录操作的方方面面,并提供一些专家级技巧和实用工具。

1. Linux文件系统概述

在Linux中,所有的文件和目录都存储在文件系统中。文件系统是指Linux系统中所有文件和目录的逻辑结构,也是文件和目录存储的物理位置。在Linux中,文件系统以树形结构展现,类似于Windows系统的文件夹结构。Linux文件系统的根目录是"/",所有其他目录都是从根目录开始的。

Linux系统中最常用的文件系统是"ext4"和"XFS"。"ext4"是Linux系统中使用最广泛的文件系统,它支持文件和目录的权限控制、文件系统日志等功能。"XFS"是一种高性能的文件系统,适用于处理大量的小文件和大文件。

2. Linux文件目录结构

Linux文件目录结构是按照一定规律组织的,这使得用户可以轻松地找到所需的文件和目录。下面是Linux文件目录结构的常用目录:

/:根目录,所有目录和文件的起点。

/bin:二进制目录,存放Linux系统所需的基本命令和二进制文件。

/boot:启动目录,包含系统启动时所需的文件。

/dev:设备目录,存放Linux系统中所有硬件设备的文件。

/etc:配置目录,存放Linux系统中各种配置文件。

/home:用户目录,存放Linux系统中所有用户的文件。

/lib:库目录,存放Linux系统所需的动态链接库文件。

/media:媒体目录,存放外部媒体设备的挂载点。

/mnt:挂载目录,存放外部文件系统的挂载点。

/opt:可选目录,存放可选的软件包。

/proc:进程目录,存放运行中的进程信息。

/root:根用户目录,root用户的主目录。

/run:运行目录,存放运行时文件和进程信息。

/sbin:系统二进制目录,存放系统管理员使用的命令。

/srv:服务目录,存放系统提供的服务的数据。

/tmp:临时目录,存放系统运行时的临时文件。

/usr`:用户程序目录,存放Linux系统中所有用户可使用的应用程序和文件。

/var:变量目录,存放Linux系统中各种变量和日志文件。


3. Linux文件和目录操作

在Linux系统中,文件和目录的操作非常灵活。用户可以通过命令行或者图形界面来进行操作。下面是Linux文件和目录操作的一些常见命令:

3.1 文件操作

3.1.1 创建文件

要创建一个新文件,可以使用touch命令:

touch filename

3.1.2 复制文件

要复制一个文件,可以使用cp命令:

cp file1 file2

其中file1是要复制的源文件,file2是复制后的目标文件。

3.1.3 移动文件

要移动一个文件,可以使用mv命令:

mv file1 file2

其中file1是要移动的源文件,file2是移动后的目标文件。

注意:如果在同一个目录操作,则是文件重命名

3.1.4 删除文件

要删除一个文件,可以使用rm命令:

rm filename
  • -r:表示递归删除
  • -f:表示强制确认

请注意,删除文件后将无法恢复。

3.1.5 查看文件

使用cat指令查看文件内容

cat [选项] 要查看的文件
  • -n:表示查看文件时显示行号

cat只能用于浏览文件,不能用于修改文件

也可以使用head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容,基本语法如下:

head 文件	# 查看文件头10行内容
head -n 5 文件	# 查看文件头五行内容,也可以换成任意数字

tail指令用于输出文件中尾部的内容,默认情况下tail指令显示文件的最后10行的内容

tail 文件		#查看文件尾10行内容
tail -n 5 文件	#查看文件尾5行内容
tail -f 文件		#实时追踪该文档的所有更新

3.1.6 输出指令

echo指令用于将内容输出到控制台

echo 输出的内容

可以使用echo指令输出环境变量,比如输出$PATH$HOSTNAME

echo $HOSTNAME

3.1.7 >和>>指令

>:输出重定向
>>:追加

ls -l > 文件		#列表的内容写入文件中(覆盖)
ls -al >> 文件	#列表的内容追加到文件的末尾
cat 文件1 > 文件2	#将文件1的内容覆盖到文件2中
echo "内容" >> 文件	#将打印的内容打印到文件中

3.2 目录操作

3.2.1 创建目录

要创建一个新目录,可以使用mkdir命令:

mkdir dirname

其中dirname是要创建的目录名。

3.2.2 复制目录

要复制一个目录及其所有子目录和文件,可以使用cp命令:

cp -r dir1 dir2

其中dir1是要复制的源目录,dir2是复制后的目标目录。

3.2.3 移动目录

要移动一个目录,可以使用mv命令:

mv dir1 dir2

其中dir1是要移动的源目录,dir2是移动后的目标目录。

3.2.4 删除目录

要删除一个目录及其所有子目录和文件,可以使用rm命令:

rm -r dirname

请注意,删除目录后将无法恢复。

4. Linux文件和目录权限控制

在Linux系统中,文件和目录的权限控制非常重要。每个文件和目录都有一个所有者和一个所属组,并且可以设置不同的权限,以控制谁可以读取、写入和执行这些文件和目录。下面是Linux文件和目录权限控制的一些常见命令:

4.1 查看文件和目录权限

要查看一个文件或目录的权限,可以使用ls命令:

ls -l filename

其中filename是要查看权限的文件或目录名。

4.2 更改文件和目录权限

要更改一个文件或目录的权限,可以使用chmod命令。chmod命令使用数字或符号来指定权限。下面是一些常见的chmod命令:

  • chmod +r filename:添加读取权限。
  • chmod +w filename:添加写入权限。
  • chmod +x filename:添加执行权限。
  • chmod -r filename:删除读取权限。
  • chmod -w filename:删除写入权限。
  • chmod -x filename:删除执行权限。

4.3 更改文件和目录所有者和所属组

要更改一个文件或目录的所有者和所属组,可以使用chown和chgrp命令。
chown命令用于更改文件或目录的所有者。下面是一些常见的chown命令:

  • chown user filename:将文件或目录的所有者更改为user。
  • chown user:group filename:将文件或目录的所有者更改为user,所属组更改为group。

例如,要将文件myfile.txt的所有者更改为用户john,可以运行以下命令:

sudo chown john myfile.txt

4.3.2 chgrp命令

chgrp命令用于更改文件或目录的所属组。下面是一些常见的chgrp命令:

  • chgrp group filename:将文件或目录的所属组更改为group。

例如,要将文件myfile.txt的所属组更改为组users,可以运行以下命令:

sudo chgrp users myfile.txt

5. Linux文件和目录搜索

在Linux系统中,可以使用一些命令来搜索文件和目录。下面是一些常见的命令:

5.1 find命令

find命令用于在指定目录中查找文件。下面是一些常见的find命令:

  • find /dir -name filename:在目录/dir中查找文件filename。
  • find /dir -type f:查找目录/dir中的所有文件。
  • find /dir -type d:查找目录/dir中的所有子目录。

例如,要在目录/home/user中查找名为myfile.txt的文件,可以运行以下命令:

find /home/user -name myfile.txt

5.2 grep命令

grep命令用于在文件中搜索指定的文本。下面是一些常见的grep命令:

  • grep pattern filename:在文件filename中搜索包含pattern的行。
  • grep -r pattern /dir:在目录/dir及其所有子目录中搜索包含pattern的文件。

例如,要在文件myfile.txt中查找包含单词“hello”的行,可以运行以下命令:

grep hello myfile.txt

6. 总结

Linux文件和目录操作是Linux系统中非常重要的一部分。本文介绍了一些常见的Linux文件和目录操作命令,包括创建、复制、移动和删除文件和目录,以及设置文件和目录的权限、所有者和所属组。此外,还介绍了Linux文件和目录搜索命令,包括find和grep命令。通过学习这些命令,可以更好地管理Linux系统中的文件和目录,并提高工作效率。


相关文章:

【Linux快速入门】文件目录操作

文章目录概念1. Linux文件系统概述2. Linux文件目录结构3. Linux文件和目录操作3.1 文件操作3.1.1 创建文件3.1.2 复制文件3.1.3 移动文件3.1.4 删除文件3.1.5 查看文件3.1.6 输出指令3.1.7 >和>>指令3.2 目录操作3.2.1 创建目录3.2.2 复制目录3.2.3 移动目录3.2.4 删…...

字体反爬慢慢总结破解方式

什么是字体反爬 网页开发者自己创造一种字体,因为在字体中每个汉字都有其代号,那么以后再网页中不会直接显示这个文字的效果。而是显示其代号,因此即使获取了网页的文本内容。也只是获取到文字的代号,而不是文字本身。 简单来说&…...

Kafka 位移提交

Kafka 位移提交自动提交手动提交Consumer 的消费位移 : 记录 Consumer 下一条消息的消费位移 如 : Consumer 已消费 5 条消息 (位移: 0 - 4) , 此时 Consumer 位移 5 : 指向下一条消息的位移 提交位移 (Committing Offsets) : Consumer 向 Kafka 汇报位移数据 Consumer 能同…...

kubernetes--监控容器运行时:Falco

目录 Falco介绍 Falco架构 Falco的安装 告警规则示列 威胁场景测试: 监控容器创建的不可信任进程(自定义规则) Falco支持五种输出告警方式falco.yaml: Falco告警集中化展示: Falco介绍 Falco是一个Linux安全工具…...

HTTP协议详解(上)

目录 前言: 认识URL HTTP协议方法 通过Fiddler抓包 GET和POST之间典型区别 header详解 HTTP响应状态码 常见状态码解释 状态码分类 HTTP协议报文格式 小结: 前言: HTTP协议属于应用层协议,称为超文本传输协议&#xff…...

java性能-原生内存-内存分析

原生内存最佳实践 内存占用 jVM使用的原生内存和堆内存总和就是一个应用程序的总内存——操作系统角度 jvm启动时候加载的类路径下的jar文件相关的内存和系统其他进程共享资源的可能 测量内存占用 线程是个例外——每当创建一个线程操作系统都会分配一些原生内存存储线程栈…...

c++类与对象

🐶博主主页:ᰔᩚ. 一怀明月ꦿ ❤️‍🔥专栏系列:线性代数,C初学者入门训练,题解C,C的使用文章 🔥座右铭:“不要等到什么都没有了,才下定决心去做” &#x1…...

Java并发编程与API详解

文章目录前言操作系统——进程和线程进程进程组成进程状态进程控制进程创建进程终止进程阻塞和唤醒进程通信线程线程组成线程状态线程控制线程的实现方式用户线程内核线程混合方式CPU调度调度的层次调度的实现调度器调度的时机、切换与过程进程调度的方式闲逛进程两种线程的调度…...

【冲刺蓝桥杯的最后30天】day5

大家好😃,我是想要慢慢变得优秀的向阳🌞同学👨‍💻,断更了整整一年,又开始恢复CSDN更新,从今天开始更新备战蓝桥30天系列,一共30天,如果对你有帮助或者正在备…...

大厂与小厂招人的区别,看完多少有点不敢相信

前两天在头条发了一条招人的感慨,关于大厂招人和小公司招人的区别。 大厂:有影响力,有钱,能够吸引了大量的应聘者。因此,也就有了筛选的资格,比如必须985名校毕业,必须35岁以下,不能…...

前端ES5对象特性

ES5对象特性 对象和函数的原型 JS中每一个对象都有一个特殊的内置属性,这个特殊的对象可以指向其他的对象 我们通过引用对象的属性key来获取一个value时,它会触发 Get 的操作首先检查该对象是否有对应的属性,如果有的话就使用对象内的如果…...

Linux入门介绍及Linux文件与目录结构

前言 本文小新为大家带来 Linux 入门介绍及Linux 文件与目录结构 相关知识,具体内容包括Linux入门介绍(包括:Linux概述,Linux与Windows区别,CentOS 下载地址),Linux文件与目录结构等进行详尽介绍…...

超赞,用python实现流媒体服务器功能,寥寥几句搞定。

步骤: 要使用Python将实时摄像机传送流写入H5页面,可以使用以下步骤。 1、安装必要的软件包。您需要安装OpenCV和Flask以及gunicorn 与 gevent 。您可以通过在终端中运行以下命令来执行此操作。 pip install opencv-python pip install Flask pip ins…...

冥想第七百二十一天

1.3.3周五,又是周五了。今天又运动了5公里,很舒服轻松。 2.还是往常的生活,休息的也很好,开春后跑的一直很好。 3.早上30分钟健康操。中午转了圈, 给大哥说下周去上海。 4.感谢父母,感谢朋友,感…...

06-Oracle表空间与用户管理

本讲主要内容: 1.表空间管理:表空间的作用,创建,修改,删除及管理; 2.用户管理:创建用户,修改用户,删除用户,修改密码,解锁; 3.用户…...

Mysql 索引特点

承接上文Mysql Server原理简介聚簇索引、二级索引、联合索引分别具备什么样的特点?聚簇索引数据跟索引放在一起的叫聚簇索引;数据和索引分开存储的叫非聚簇索引;innodb存储引擎,数据和文件都放在ibd文件中,实际的数据是…...

读书笔记-终身学习

前言人需要终身成长,也需要终身学习,以下是记录个人读书学习的笔记总结,希望能给大家一点借鉴,仅供参考。笔记1、《匠人精神》秋山利辉是日本神奈川县横滨市都筑区“秋山木工”的经营者,从事订制家具制作业务。是一家小…...

了解栈Stack一篇文章就够了

什么是栈栈是一种特殊的线性表,只允许一端进行数据的插入和删除,即先进后出原则。类似于弹夹先装进去的子弹后面出,后放入的子弹先出。栈的底层原理栈是一种线性结构,所以既能使用数组实现,也能使用链表实现&#xff0…...

CNStack 助推龙源电力扛起“双碳”大旗

作者:CNStack 容器平台、龙源电力:张悦超 、党旗 龙源电力容器云项目背景 龙源电力集团是世界第一大风电运营商, 随着国家西部大开发战略推进,龙源电力已经把风力发电场铺设到全国各地,甚至是交通极不便利的偏远地区&…...

ruoyi-vue-plus1(控制台相关的输出日志)(p6spy插件)(jackson全局配置)(StopWatch)

Jackson配置在启动项目时,我们发现日志打印出这样几行字,初始化了jacdson配置,我们去查看一下来源找。我们找到了一个全局序列化配置类,其中重写了BigNumberSerializer.INSTANCE进去查看发现了这里对于部分范围的数字进行了转为为…...

生成xcframework

打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解

突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 ​安全措施依赖问题​ GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动

一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!

5月28日&#xff0c;中天合创屋面分布式光伏发电项目顺利并网发电&#xff0c;该项目位于内蒙古自治区鄂尔多斯市乌审旗&#xff0c;项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站&#xff0c;总装机容量为9.96MWp。 项目投运后&#xff0c;每年可节约标煤3670…...

ffmpeg(四):滤镜命令

FFmpeg 的滤镜命令是用于音视频处理中的强大工具&#xff0c;可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下&#xff1a; ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜&#xff1a; ffmpeg…...

Java多线程实现之Thread类深度解析

Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...