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

Linux文件属性 --- 七种文件类型---文件.目录、软硬链接、字符设备文件

目录

七种文件类型

1、普通文件和目录

 2、链接文件

 2.1硬链接

 2.2软链接 

 3、字符设备文件


一、七种文件类型

 Linux的文件属性中一共有以下七种类型 :

符号类型含义解释
-普通文件纯文本文件(ASCII)和二进制文件(binary)
d目录类似于Windows的文件夹
l符号链接文件ln –s 源文件 链接文件可以产生链接文件
c字符设备文件一些特殊的设备文件
b块设备和其他外围设备如硬盘和内存
s套接字文件与另一个进程进行跨网络通信的文件
p管道文件主要用于进程间通信

1、普通文件和目录

        输入ll -h命令,这里看最左边第一位,分别有“-”和“d”。“-”代表是文件类型,“d”代表目录类型,这两种文件类型符号在linux系统中是很常见的。

7f71c448dc1b47f999805becc53f6ef1.png

[root@fnd_LN abc]# touch a1.txt;mkdir 123;ll -h   
总用量 0                                                           #创建a1.txt文件、123目录、查看详细信息      ​​​
drwxr-xr-x. 2 root root 6 12月 17 09:30 123
-rw-r--r--. 1 root root 0 12月 17 09:30 a1.txt

 2、链接文件

        在Linux文件系统里,链接可分为两种 : 硬链接与软链接,硬链接的意思是一个文件可以有多个名称,而软链接的方式则是产生一个特殊的文件,该文件的内容是指向另一个文件的位置。

硬链接只能存在在同一个文件系统中,软链接可以跨越不同的文件系统。这两种链接都不会额外占用太多的系统内存,类似于Windows操作系统中的副本备份或快捷方式。

软链接硬链接
路径形式存在文件副本形式存在
目录创建链接目录不能创建链接
跨文件系统 不能跨文件系统 
 可以对不存在的文件名进行链接/

ln [参数][源文件或目录][目标文件或目录]

参数作用
--backup[=CONTROL]备份已存在的目标文件
-b类似 --backup,不接受参数
-d允许超级用户制作目录的硬链接
-f强制执行
-i交互模式,若文件存在则提示用户是否覆盖
-n把符号链接当作一般目录
-s软链接
-v显示详细的处理过程

 2.1硬链接

[root@fnd_LN abc]# ll                                                                #创建硬链接前
总用量 0
-rw-r--r--. 1 root root 0 12月 17 14:01 123.txt

[root@fnd_LN abc]# ln 123.txt 123.txt.backup                            #创建硬链接后
[root@fnd_LN abc]# ll
总用量 0
-rw-r--r--. 2 root root 0 12月 17 14:01 123.txt                              #源文件和链接文件均为蓝色
-rw-r--r--. 2 root root 0 12月 17 14:01 123.txt.backup                 #不为符号链接文件

        硬链接是以文件副本形式存在的,所有源文件和链接文件的内容是互通的,假如要删除源文件是不会影响链接文件数据的,只是会取消蓝色标记,以不同名称的形式来“代替”源文件。

[root@fnd_LN abc]# echo 666 > 123.txt.backup         #修改任意其中一个,另一个也会变化
[root@fnd_LN abc]# cat 123.txt
666
[root@fnd_LN abc]# cat 123.txt.backup 
666
[root@fnd_LN abc]# rm -f 123.txt                                         #删除源文件
[root@fnd_LN abc]# ll
总用量 4
-rw-r--r--. 1 root root 4 12月 17 14:15 123.txt.backup           #链接标志消失,内容不变

 2.2软链接 

[root@fnd_LN abc]# ln -s 123.txt 123.txt.backup
[root@fnd_LN abc]# ll
总用量 0
-rw-r--r--. 1 root root 0 12月 17 14:26 123.txt
lrwxrwxrwx. 1 root root 7 12月 17 14:28 123.txt.backup -> 123.txt        #首位为链接文件标识

       软连接在写入上与硬链接相同,修改任意其中一个,另一个也会变化。但是如果删除源文件,软链接文件将丢失所有数据,就像是Windows操作系统中的快捷方式。

[root@fnd_LN abc]# rm -f 123.txt                                           #删除源文件
[root@fnd_LN abc]# ll
总用量 0
lrwxrwxrwx. 1 root root 7 12月 17 14:28 123.txt.backup -> 123.txt

[root@fnd_LN abc]# cat 123.txt.backup 
cat: 123.txt.backup: 没有那个文件或目录

 3、字符设备文件

在这里每个硬件设备都被视为一个“文件”,可以让使用者比较直观地去查看了解。

c代表字符设备:以字节为单位进行读写的设备。

b代表块设备:以块为单位进行读写的设备。

例如,/dev/sda就是一个块设备文件,代表了第一个SATA硬盘,a后面的数列为硬盘的分区。

[root@fnd_LN ~]# ll /dev                                                        #不同设备也有不同颜色的区分
总用量 0
crw-rw----. 1 root video    10, 175 12月 17 09:26 agpgart
crw-------. 1 root root     10, 235 12月 17 09:26 autofs

brw-rw----. 1 root disk      8,   0 12月 17 09:26 sda
brw-rw----. 1 root disk      8,   1 12月 17 09:26 sda1
brw-rw----. 1 root disk      8,   2 12月 17 09:26 sda2

相关文章:

Linux文件属性 --- 七种文件类型---文件.目录、软硬链接、字符设备文件

目录 七种文件类型 1、普通文件和目录 2、链接文件 2.1硬链接 2.2软链接 3、字符设备文件 一、七种文件类型 Linux的文件属性中一共有以下七种类型 : 符号类型含义解释-普通文件纯文本文件(ASCII)和二进制文件(binary&#xff…...

Tree-of-Counterfactual Prompting for Zero-Shot Stance Detection

论文地址:Tree-of-Counterfactual Prompting for Zero-Shot Stance Detection - ACL Anthologyhttps://aclanthology.org/2024.acl-long.49/ 1. 概述 立场检测被定义为对文本中立场态度的自动推断。根据 Biber 和 Finegan (1988) 的定义,立场包含两个主…...

NextJs 路由管理

NextJs 路由管理 Defining Routes 1. Creating Routes 2. Creating UI export default function Page() {return <h1>Hello, Next.js!</h1> }Route Groups 路由组 1. 在不影响 URL 路径的情况下组织路由 要在不影响 URL 的情况下组织路由&#xff0c;请创建一…...

hive 小文件分析

1、获取fsimage文件&#xff1a; hdfs dfsadmin -fetchImage /data/xy/ 2、从二进制文件解析&#xff1a; hdfs oiv -i /data/xy/fsimage_0000000019891608958 -t /data/xy/tmpdir -o /data/xy/out -p Delimited -delimiter “,” 3、创建hive表 create database if not exists…...

【JavaWeb后端学习笔记】WebSocket通信

WebSocket是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工通信——浏览器和服务器只需要完成一次握手&#xff0c;两者之间就可以创建持久性的连接&#xff0c;并进行双向数据传输。 主要应用场景&#xff1a;视频弹幕、网页聊天、体育实况更新、股票基金报价实时…...

搭建springmvc项目

什么是springmvc MVC它是一种设计理念。把程序按照指定的结构来划分: Model模型 View视图 Controller控制层 springmvc框架是spring框架的一个分支。它是按照mvc架构思想设计的一款框架。 springmvc的主要作用: 接收浏览器的请求数据&#xff0c;对数据进行处理&#xff0c;…...

Springboot3.x配置类(Configuration)和单元测试

配置类在Spring Boot框架中扮演着关键角色&#xff0c;它使开发者能够利用Java代码定义Bean、设定属性及调整其他Spring相关设置&#xff0c;取代了早期版本中依赖的XML配置文件。 集中化管理&#xff1a;借助Configuration注解&#xff0c;Spring Boot让用户能在一个或几个配…...

java后端环境配置

因为现在升学了&#xff0c;以前本来想毕业干java的&#xff0c;很多java的环境配置早就忘掉了&#xff08;比如mysql maven jdk idea&#xff09;&#xff0c;想写个博客记录下来&#xff0c;以后方便自己快速搭建环境 JAVA后端开发配置 环境配置jdkideamavenMySQLnavicate17…...

手眼标定工具操作文档

1.手眼标定原理介绍 术语介绍 手眼标定&#xff1a;为了获取相机与机器人坐标系之间得位姿转换关系&#xff0c;需要对相机和机器人坐标系进行标定&#xff0c;该标定过程成为手眼标定&#xff0c;用于存储这一组转换关系的文件称为手眼标定文件。 ETH&#xff1a;即Eye To …...

WebGIS城市停水及影响范围可视化实践

目录 前言 一、相关信息介绍 1、停水信息的来源 2、停水包含的相关信息 二、功能简介 1、基础小区的整理 2、停水计划的管理 三、WebGIS空间可视化 1、使用到的组件 2、停水计划的展示 3、影响小区的展示 4、实际效果 四、总结 前言 城市停水&#xff0c;一个看似…...

无管理员权限 LCU auth-token、port 获取(全网首发 go)

一&#xff1a; 提要&#xff1a; 参考项目&#xff1a; https://github.com/Zzaphkiel/Seraphine 想做一个 lol 查战绩的软件&#xff0c;并且满足自己的需求&#xff08;把混子和大爹都表示出来&#xff09;&#xff0c;做的第一步就是获取 lcu token &#xff0c;网上清一色…...

【数字花园】数字花园(个人网站、博客)搭建经历教程

目录 写在最最前面数字花园的定义第一章&#xff1a;netlify免费搭建数字花园相关教程使用的平台步骤信息管理 第二章&#xff1a;本地部署数字花园数字花园网站本地手动部署方案1. 获取网站源码2.2 安装 Node.js 3. 项目部署3.1 安装项目依赖3.2 构建项目3.3 启动http服务器 4…...

python模拟练习第一期

问题一 如果一个数 p 是个质数&#xff0c;同时又是整数 a的约数&#xff0c;则 p 称为 a的一个质因数。 请问 2024 有多少个质因数&#xff1f; 步骤 1: 分解 2024 首先&#xff0c;2024 是偶数&#xff0c;说明可以被 2 整除。我们从 2 开始进行除法分解&#xff1a; 202…...

Xcode

info.plist Appearance Light 关闭黑暗模式 Bundle display name 设置app名称&#xff0c;默认为工程名 Location When In Use Usage Description 定位权限一共有3个key 1.Privacy - Location When In Use Usage Description 2.Privacy - Location Always and When In U…...

RabbitMQ安装延迟消息插件(mq报错)

之前启动一个springboot的单体项目&#xff0c;一直mq的错误&#xff0c;即便我更新了最新版本的mq&#xff0c;还是报错。 后来才发现&#xff0c;项目使用了延时队列&#xff0c;是需要单独下载延时插件的。 1如果判断mq有没有延时队列插件【没有x-delayed-message】 2下载…...

es 3期 第15节-词项查询与跨度查询实战运用

#### 1.Elasticsearch是数据库&#xff0c;不是普通的Java应用程序&#xff0c;传统数据库需要的硬件资源同样需要&#xff0c;提升性能最有效的就是升级硬件。 #### 2.Elasticsearch是文档型数据库&#xff0c;不是关系型数据库&#xff0c;不具备严格的ACID事务特性&#xff…...

iOS Delegate模式

文章目录 一、 Delegate 模式的概念二、Delegate 的实现步骤步骤 1: 定义一个协议&#xff08;Protocol&#xff09;步骤 2: 在主类中添加一个 delegate 属性步骤 3: 实现协议的类遵守协议并实现方法步骤 4: 设置 delegate 三、Delegate 模式的特点四、Delegate 模式的常见场景…...

java-使用druid sqlparser将SQL DDL脚本转化为自定义的java对象

java-使用druid sqlparser将SQL DDL脚本转化为自定义的java对象 一、引言二、环境三、待解析的DDL四、解析后的对象结构五、完整的UT类六、控制台输出总结 一、引言 在日常开发中&#xff0c;有些需要对SQL进行解析的场景&#xff0c;比如读取表结构信息&#xff0c;生成文档、…...

React状态管理常见面试题目(一)

1. Redux 如何实现多个组件之间的通信?多个组件使用相同状态时如何进行管理? Redux 实现组件通信 Redux 是一个集中式的状态管理工具&#xff0c;通过共享一个全局 store 来实现多个组件之间的通信。 通信机制&#xff1a; 所有状态保存在 Redux 的全局 store 中。使用 ma…...

jenkins 出现 Jenkins: 403 No valid crumb was included in the request

文章目录 前言解决方式:1.跨站请求为找保护勾选"代理兼容"2.全局变量或者节点上添加环境变量3.&#xff08;可选&#xff09;下载插件 the strict Crumb Issuer plugin4.重启 前言 jenkins运行时间长了&#xff0c;经常出现点了好几次才能构建&#xff0c;然后报了Je…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python&#xff5c;GIF 解析与构建&#xff08;5&#xff09;&#xff1a;手搓截屏和帧率控制 一、引言 二、技术实现&#xff1a;手搓截屏模块 2.1 核心原理 2.2 代码解析&#xff1a;ScreenshotData类 2.2.1 截图函数&#xff1a;capture_screen 三、技术实现&…...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型&#xff1a;架构设计与关键步骤 在当今数字化转型的浪潮中&#xff0c;大语言模型&#xff08;LLM&#xff09;已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中&#xff0c;不仅可以优化用户体验&#xff0c;还能为业务决策提供…...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK&#xff0c;开始写第二篇的内容了。这篇博客主要能写一下&#xff1a; 如何给一些三方库按照xmake方式进行封装&#xff0c;供调用如何按…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

cf2117E

原题链接&#xff1a;https://codeforces.com/contest/2117/problem/E 题目背景&#xff1a; 给定两个数组a,b&#xff0c;可以执行多次以下操作&#xff1a;选择 i (1 < i < n - 1)&#xff0c;并设置 或&#xff0c;也可以在执行上述操作前执行一次删除任意 和 。求…...

【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)

可以使用Sqliteviz这个网站免费编写sql语句&#xff0c;它能够让用户直接在浏览器内练习SQL的语法&#xff0c;不需要安装任何软件。 链接如下&#xff1a; sqliteviz 注意&#xff1a; 在转写SQL语法时&#xff0c;关键字之间有一个特定的顺序&#xff0c;这个顺序会影响到…...

Robots.txt 文件

什么是robots.txt&#xff1f; robots.txt 是一个位于网站根目录下的文本文件&#xff08;如&#xff1a;https://example.com/robots.txt&#xff09;&#xff0c;它用于指导网络爬虫&#xff08;如搜索引擎的蜘蛛程序&#xff09;如何抓取该网站的内容。这个文件遵循 Robots…...

【C语言练习】080. 使用C语言实现简单的数据库操作

080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

微信小程序云开发平台MySQL的连接方式

注&#xff1a;微信小程序云开发平台指的是腾讯云开发 先给结论&#xff1a;微信小程序云开发平台的MySQL&#xff0c;无法通过获取数据库连接信息的方式进行连接&#xff0c;连接只能通过云开发的SDK连接&#xff0c;具体要参考官方文档&#xff1a; 为什么&#xff1f; 因为…...

ArcGIS Pro制作水平横向图例+多级标注

今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作&#xff1a;ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等&#xff08;ArcGIS出图图例8大技巧&#xff09;&#xff0c;那这次我们看看ArcGIS Pro如何更加快捷的操作。…...