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

Linux(二) | 文件基本属性与链接扩展

个人主页-爱因斯晨

文章专栏-Linux

最近学习人工智能时遇到一个好用的网站分享给大家:
人工智能学习

在这里插入图片描述

文件属性

看懂文件属性

在Linux中我们可以使用ll或者ls-l命令来显示一个文件的属性以及文件所属的用户和组。如:

root@VM-24-17-ubuntu:~# cd /
root@VM-24-17-ubuntu:/# ls -ll
total 2035800
lrwxrwxrwx   1 root root          7 Apr 22  2024 bin -> usr/bin
drwxr-xr-x   2 root root       4096 Feb 26  2024 bin.usr-is-merged
drwxr-xr-x   3 root root       4096 Jul  1 15:32 boot
dr-xr-xr-x   2 root root       4096 Apr 23  2024 cdrom
drwxr-xr-x   2 root root       4096 Apr 29  2024 data
drwxr-xr-x  19 root root       3960 Aug 27 22:03 dev
drwxr-xr-x 119 root root       4096 Aug 27 22:09 etc
drwxr-xr-x   4 root root       4096 Aug 28 10:37 home
lrwxrwxrwx   1 root root          7 Apr 22  2024 lib -> usr/lib
lrwxrwxrwx   1 root root          9 Apr 22  2024 lib64 -> usr/lib64
drwxr-xr-x   2 root root       4096 Feb 26  2024 lib.usr-is-merged
drwx------   2 root root      16384 Apr 26  2024 lost+found
drwxr-xr-x   2 root root       4096 Apr 23  2024 media
drwxr-xr-x   2 root root       4096 Apr 23  2024 mnt
drwxr-xr-x   2 root root       4096 Apr 23  2024 opt
dr-xr-xr-x 188 root root          0 Aug 27 22:03 proc
drwx------   6 root root       4096 Aug 28 17:24 root
drwxr-xr-x  33 root root       1160 Aug 28 17:24 run
lrwxrwxrwx   1 root root          8 Apr 22  2024 sbin -> usr/sbin
drwxr-xr-x   2 root root       4096 Apr  3  2024 sbin.usr-is-merged
drwxr-xr-x   2 root root       4096 Apr 26  2024 snap
drwxr-xr-x   2 root root       4096 Apr 23  2024 srv
-rw-------   1 root root 2084569088 Apr 26  2024 swap.img
dr-xr-xr-x  13 root root          0 Aug 27 22:04 sys
drwxrwxrwt  13 root root       4096 Aug 28 16:26 tmp
drwxr-xr-x  12 root root       4096 Apr 23  2024 usr
drwxr-xr-x  13 root root       4096 Apr 26  2024 var
root@VM-24-17-ubuntu:/# 

在Linux中,我们使用第一个字符来表示这个文件是目录还是文件或连接

  • 当为[d]则是目录
  • 当为[-]则是文件
  • 若是[l]则表示为链接文档(link file)
  • 若是[b]则表示为装置文件里面的可供储存的接口设备(可随机存取装置)
  • 若是[c]则表示为装置文件里面的串行端口设备

接下来的字符中是以三个为一组[rwx]的三个参数的组合

[r]是指可读,[w]是指可写,[x]:可以执行

三个参数的位置不会改变,如果没有权限则用-代替。

在这里插入图片描述

drwxr-xr-x   3 //文件个数 root //属主 root//游客       4096 Jul  1 15:32 boot

修改文件属性

1.chgrp:更改文件属组

chgrp [-R] 属组名 文件名

-R:递归更改文件属组,更改某个目录的同时,修改目录下的所有文件属组

2.chown :更改文件属主,也可以同时修改属组

chown [-R] 属主名 文件名
chown [-R] 属主名:属组名 文件名

在这里插入图片描述

3.chmod :更改文件9个属性(必须掌握)

chmod [-R] xyz 文件或目录

文件属性有两种设置方法,一种是数字(常用的数字),一种是符号

Linux文件的基本权限就有九个,分别是owner/group/others三种身份,各有自己的三种权限r/w/x

我们可以用数字来代表三个权限 :

r-4,w-2,x-1

rw-4+2=6
rwx-4+2+1=7

每种身份的三个权限是要累加的,例如:

owner=rwx=4+2+1=7
group=rwx=4+2+1=7
other=---=00
chmod 770 filename
root@VM-24-17-ubuntu:/# cd /home
root@VM-24-17-ubuntu:/home# ls
lighthouse  test7  test8  ubuntu
root@VM-24-17-ubuntu:/home# ls -ll
total 16
drwxr-x--- 2 lighthouse lighthouse 4096 Aug 27 22:03 lighthouse
drwxr-xr-x 2 root       root       4096 Aug 28 17:57 test7
drwxr-xr-x 2 root       root       4096 Aug 28 17:57 test8
drwxr-x--- 5 ubuntu     ubuntu     4096 Aug 27 22:03 ubuntu
root@VM-24-17-ubuntu:/home# chmod 770 test7 //修改权限
root@VM-24-17-ubuntu:/home# ls -ll
total 16
drwxr-x--- 2 lighthouse lighthouse 4096 Aug 27 22:03 lighthouse
drwxrwx--- 2 root       root       4096 Aug 28 17:57 test7
drwxr-xr-x 2 root       root       4096 Aug 28 17:57 test8
drwxr-x--- 5 ubuntu     ubuntu     4096 Aug 27 22:03 ubuntu
root@VM-24-17-ubuntu:/home# 

文件内容查看

Linux 系统中使用以下命令来查看文件的内容:

  • cat 由第一行开始显示文件内容
  • tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
  • nl 显示的时候,顺道输出行号!
  • more 一页一页的显示文件内容,带余下内容的(空格代表翻页,enter代表向下看一行,-f 行号)
  • less 与 more 类似,但是比 more 更好的是,他可以往前翻页!(空格下翻页,上下键代表滚动页面!退出q命令,查找字符串/要查询的字符向下查询,要查询字符串,n继续查询下一个)
  • head 只看前头几行
  • tail 只看尾巴几行

你可以使用 man [命令] 来查看各个命令的使用文档,如:man cp。

root@VM-24-17-ubuntu:~# cd /root
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf  1fef20ff65d7f03923621f8494e5877c.pdf  tee
1eada41a4fd1d0278ef5dc7bfceea6d.jpg   ceshi.docx
root@VM-24-17-ubuntu:~# cat ceshi.docx //查看第一行内容
PK 
N	docProps/PN࿇¾\qdocProps/app.xmlQo0ߗ꽐ޡ㒔Ĺ´l&󿺴M¹@3h¶󰧻ޛ=紧_{񫒵̙f'n謃󹲷Ɩ»6¤ 
ٝtD󎭦ª#ŊU#QUFϓܠ.x	¥'¸<ÿ񽺫¸J
1|ªөϰડPcÿ©7G             :ג臏Ժ¥0Fw 
¿3noZsl"µ"²¹# aH[°󀲊ZƬnZVF£OÿջYMÿ»ÿkٌ4¹$tzP|¼²eڷz٥ϧ­c 
a|܆o飵󣗢󦓸񕟜yAƓ`Q¶Ũm©9Гb瘿o,�«PN࿥,EddocProps/core.xmlQKp࠿CȻ¦m*{r0פ⋄㬫6iH¢޾½iؕ>񛳿snn󸒖󿿧[5ª@$Q7¢R𼭖
root@VM-24-17-ubuntu:~# tac ceshi.docx //查看最后一行
» 9word/theme/theme1.xmlPK΃O$Nྐword/theme/PNၝµ 
Nྐr!word/_rels/PN၈P禂 !word/_rels/document.xml.relsPNအ¬ vword/document.xmlPNၢU¾	 :word/fontTable.xmlPN࿄
word/styles.xmlPK   ®·	 ۷ord/settings.xmlPNၴٝ¢	ªe 
Nྐ胷ord/PK 
N	docProps/PN࿇¾\q 'docProps/app.xmlPN࿥,Ed ±docProps/core.xmlPN࿁󣒁쀓 %docProps/custom.xmlPK 
N྆( _rels/PNཱྀ"" 

因为ceshi文件是 Microsoft Word 文档(Office 格式),属于二进制文件,直接用 cat 查看会显示乱码(二进制内容被强制转成文本)。后续我们会安装插件

硬链接和软连接

root@VM-24-17-ubuntu:/# cd ~
root@VM-24-17-ubuntu:~# cd /
root@VM-24-17-ubuntu:/# ll
total 2035808
drwxr-xr-x  24 root root       4096 Aug 28 23:22 ./
drwxr-xr-x  24 root root       4096 Aug 28 23:22 ../
-rw-r--r--   1 root root          0 Aug 27 22:03 .autorelabel
lrwxrwxrwx   1 root root          7 Apr 22  2024 bin -> usr/bin/
drwxr-xr-x   2 root root       4096 Feb 26  2024 bin.usr-is-merged/
drwxr-xr-x   3 root root       4096 Jul  1 15:32 boot/
dr-xr-xr-x   2 root root       4096 Apr 23  2024 cdrom/
drwxr-xr-x   2 root root       4096 Apr 29  2024 data/
drwxr-xr-x  19 root root       3960 Aug 27 22:03 dev/
drwxr-xr-x 119 root root       4096 Aug 27 22:09 etc/
drwxr-xr-x   6 root root       4096 Aug 28 17:57 home/
lrwxrwxrwx   1 root root          7 Apr 22  2024 lib -> usr/lib/
lrwxrwxrwx   1 root root          9 Apr 22  2024 lib64 -> usr/lib64/
drwxr-xr-x   2 root root       4096 Feb 26  2024 lib.usr-is-merged/
drwx------   2 root root      16384 Apr 26  2024 lost+found/
drwxr-xr-x   2 root root       4096 Apr 23  2024 media/
drwxr-xr-x   2 root root       4096 Apr 23  2024 mnt/
drwxr-xr-x   2 root root       4096 Apr 23  2024 opt/
dr-xr-xr-x 189 root root          0 Aug 27 22:03 proc/
drwx------   6 root root       4096 Aug 28 22:53 root/
drwxr-xr-x  33 root root       1160 Aug 28 22:53 run/
lrwxrwxrwx   1 root root          8 Apr 22  2024 sbin -> usr/sbin/
drwxr-xr-x   2 root root       4096 Apr  3  2024 sbin.usr-is-merged/
drwxr-xr-x   2 root root       4096 Apr 26  2024 snap/
drwxr-xr-x   2 root root       4096 Apr 23  2024 srv/
-rw-------   1 root root 2084569088 Apr 26  2024 swap.img
dr-xr-xr-x  13 root root          0 Aug 27 22:04 sys/
drwxrwxrwt  13 root root       4096 Aug 28 23:15 tmp/
drwxr-xr-x  12 root root       4096 Apr 23  2024 usr/
drwxr-xr-x  13 root root       4096 Apr 26  2024 var/
root@VM-24-17-ubuntu:/# 

l开头的是链接

Linux下的链接分为两种:软连接和硬链接

硬链接:A–B, 假设 B 是 A 的硬链接,那么他们两个指向了同一个文件!允许一

个文件拥有多个路径,用户可以通过这种机制建立硬链接到一些重要文件上,防

止误删!

软链接:类似 Window 下的快捷方式,删除的源文件,快捷方式也访问不了!

touch 命令创建文件!

创建链接命令 ln

echo输入字符串

root@VM-24-17-ubuntu:/# cd /home
root@VM-24-17-ubuntu:/home# ls
lighthouse  test7  test8  ubuntu
root@VM-24-17-ubuntu:/home# touch f1 //创建f1文件
root@VM-24-17-ubuntu:/home# ls
f1  lighthouse  test7  test8  ubuntu
root@VM-24-17-ubuntu:/home# ln f1 f2 //创建一个硬链接
root@VM-24-17-ubuntu:/home# ls
f1  f2  lighthouse  test7  test8  ubuntu
root@VM-24-17-ubuntu:/home# ln -s f1 f3 //创建一个软链接 符号链 f3
root@VM-24-17-ubuntu:/home# ls
f1  f2  f3  lighthouse  test7  test8  ubuntu
root@VM-24-17-ubuntu:/home# ll
total 24
drwxr-xr-x  6 root       root       4096 Aug 28 23:32 ./
drwxr-xr-x 24 root       root       4096 Aug 28 23:32 ../
-rw-r--r--  2 root       root          0 Aug 28 23:31 f1
-rw-r--r--  2 root       root          0 Aug 28 23:31 f2
lrwxrwxrwx  1 root       root          2 Aug 28 23:32 f3 -> f1
drwxr-x---  2 lighthouse lighthouse 4096 Aug 27 22:03 lighthouse/
drwxrwx---  2 root       root       4096 Aug 28 17:57 test7/
drwxr-xr-x  2 root       root       4096 Aug 28 17:57 test8/
drwxr-x---  5 ubuntu     ubuntu     4096 Aug 27 22:03 ubuntu/
root@VM-24-17-ubuntu:/home# echo "i love chen">>f1 //给f1文件种写入字符串
root@VM-24-17-ubuntu:/home# cat f1
i love chen
root@VM-24-17-ubuntu:/home# cat f2
i love chen
root@VM-24-17-ubuntu:/home# cat f3
i love chen
root@VM-24-17-ubuntu:/home# 

删除f1之后,f2和f3的区别

root@VM-24-17-ubuntu:/home# rm -rf f1 //删除f1文件
root@VM-24-17-ubuntu:/home# ls
f2  f3  lighthouse  test7  test8  ubuntu //f3爆红
root@VM-24-17-ubuntu:/home# cat f2 //f2还存有
i love chen
root@VM-24-17-ubuntu:/home# cat f3 //f3内容缺失
cat: f3: No such file or directory
root@VM-24-17-ubuntu:/home# 
http://www.xdnf.cn/news/1381771.html

相关文章:

  • Spring Security 深度学习(二): 自定义认证机制与用户管理
  • npm install --global @dcloudio/uni-cli 时安装失败
  • 一天认识一个神经网络之--CNN卷积神经网络
  • QT之双缓冲 (QMutex/QWaitCondition)——读写分离
  • LINUX ---网络编程(三)
  • 如何通过docker进行本地部署?
  • 机器学习回顾(二)——KNN算法
  • Day16_【机器学习概述】
  • 设计模式:组合模式(Composite Pattern)
  • 【数据结构与算法】LeetCode 20.有效的括号
  • Vue 组件循环 简单应用及使用要点
  • 微服务保护和分布式事务-01.雪崩问题-原因分析
  • 步进电机、直流电机常见问题
  • APP手游使用游戏盾SDK为何能有效抵御各类攻击?
  • Java全栈工程师的实战面试:从基础到微服务的全面解析
  • 算法 --- 二分
  • Paimon——官网阅读:非主键表
  • CLIP图像特征提取:`CLIPVisionModel` vs `CLIPModel.get_image_features()`,哪种更适合你的任务?
  • [sys-BlueChi] docs | BluechiCtl命令行工具
  • 滑台模组如何实现电子制造精密加工?
  • Java 大视界 -- 基于 Java 的大数据实时流处理在智能电网分布式电源接入与电力系统稳定性维护中的应用(404)
  • 零基础开发应用:cpolar+Appsmith平民化方案
  • HVV面经总结(二)
  • MySQL事务ACID特性
  • 内网穿透工具【frp】的核心功能底层处理逻辑解析
  • Linux部分底层机制
  • LeetCode-279. 完全平方数
  • Linux 软件编程(十三)网络编程:TCP 并发服务器模型与 IO 多路复用机制、原理epoll
  • 工业机器人如何通过Modbus TCP转CanOpen网关高效通信!
  • HTML贪吃蛇游戏实现