DAY6-文件属性类型链接

格局清晰,内容详细。给个A吧!!!

u=3912782603,1429276006&fm=26&gp=0.jpg

1.文件属性

[root@oldboyedu.com~]# ll -h
total 56M
-rw-r--r--. 1 root root 672 Jul 31 08:49 1.txt

-rw-r--r--. 1 root root 1.1K Jul 31 09:43 passwd
-rw-r--r--. 1 root root 89 Jul 31 09:29 test.txt
-rw-r--r--. 1 root root 39K Jul 22 13:15 11.jpg

  • 第一列第一个字符 表示文件类型--->
  • rw-r--r-- 权限(下周)
  • 1 这个文件被链接次数
  • root 文件的拥有者(用户)
  • root 文件的拥有组(用户组 ==>家族)
  • 672 文件大小
  • Jul 31 08:49 文件的日期,以及创建的文件的时间
  • 1.txt 文件名称

2.文件类型

[root@oldboyedu.com~]# ll -d /etc/hosts /tmp /bin/ls
/dev/sda /dev/tty1 /etc/grub2.cfg /dev/log
-rwxr-xr-x. 1 root root 117680 Oct 31 2018 /bin/ls
srw-rw-rw-. 1 root root 0 Jul 26 10:08 /dev/log
brw-rw----. 1 root disk 8, 0 Jul 26 10:08 /dev/sda
crw--w----. 1 root tty 4, 1 Jul 26 10:08 /dev/tty1
lrwxrwxrwx. 1 root root 22 Jul 24 11:58
/etc/grub2.cfg -> ../boot/grub2/grub.cfg
-rw-r--r--. 1 root root 158 Jul 30 09:20
/etc/hosts
drwxrwxrwt. 13 root root 4096 Jul 31 09:29 /tmp
  • 文件 (普通文件 图片 压缩包)
  • s socket 本地进程与进程间的一种通信方式 (mysql)
  • b 块设备文件 (硬盘 光盘 分区)
  • 对于一些文件无法精准的区分类型, 可以使用file命令查看
  • 因为Linux不区分后缀, 后缀通常都是用来表示的,为了方便我们自己好识别
  • c 字符设备 用于提供用户的输入与输出
  • l 链接文件 类似windows的快捷方式
  • d 目录 类似windows的文件夹

对于一些文件无法精准的区分类型, 可以使用file命令查看

  1. 无法精准判断这个文件到底是什么类型
access.log img.jpg 123.zip
-rw-r--r--. 1 root root 20785 Jul 31 10:41 123.zip
-rwxr-xr-x. 1 root root 26 Jul 31 10:45 1.sh
-rw-r--r--. 1 root root 672 Jul 31 08:49 1.txt
-rw-r--r--. 1 root root 58112885 Jul 30 16:49
access.log
-rwxr-xr-x. 1 root root 117680 Oct 31 2018 /bin/ls
-rw-r--r--. 1 root root 39609 Jul 22 13:15 img.jpg
  1. 使用file能精准查看出文件是什么类型
access.log img.jpg 123.zip
/bin/ls: ELF 64-bit LSB executable, x86-64, version
1 (SYSV), dynamically linked (uses shared libs), for
GNU/Linux 2.6.32,
BuildID[sha1]=ceaf496f3aec08afced234f4f36330d3d13a657b
, stripped
1.sh: Bourne-Again shell script, ASCII text
executable
1.txt: ASCII text
access.log: ASCII text, with very long lines
img.jpg: JPEG image data, JFIF standard 1.01
123.zip: Zip archive data, at least v2.0 to extract

因为Linux不区分后缀, 后缀通常都是用来表示的,为了方便我们自己好识别

3.链接文件

1.软链接 (类似于WIndows的快捷方式)软链接使用场景 (很少对文件做软连接)

2.代码升级 秒级回退
3.不方便移动的目录

  • 硬链接 ln /root/file /root/file_hard

  • 4.硬链接与软链接区别
    1)ln命令创建硬链接,ln -s命令创建软链接。
    2)目录不能创建硬链接,并且硬链接不可以跨越分区系统。
    3)目录软链接特别常用,并且软链接支持跨越分区系统。
    4)硬链接文件与源文件的inode相同,软链接文件与源文件inode不
    同。
    5)删除软链接文件,对源文件及硬链接文件无任何影响。
    6)删除文件的硬链接文件,对源文件及链接文件无任何影响。
    7)删除链接文件的源文件,对硬链接无影响,会导致软链接失效。
    8)删除源文件及其硬链接文件,整个文件会被真正的删除。

软链接与硬链接的区别?

1.软连接就是一个快捷方式,删除软连接不会影响源文件.
2.硬链接,类似于一个文件副本,删除硬链接不影响原文件,只有删
除所有的硬链接及其源文件,这个文件才算彻底被删除.

4.命令执行流程[扩展了解]

1.当我们执行一个命令, 整个命令执行流程如下:

  • 1) 判断命令是否通过绝对路径执行
  • 2) 判断命令是否存在alias别名
  • 3) 判断用户输入的是内置命令还是外置命令
  • 4) Bash内部命令直接执行,外部命令检测是否存在缓存
  • 5) 通过$PATH变量查找命令,有执行,无报错 command not
    found

绝对路径-->alias--->hash缓存-->PATH变量路径--->有执行--->没有command not found

今日总结

  • 1.文件的属性
    怎么看 ls -l
    都是什么意思 --->先看会的,在看不会.
  • 2.文件的类型
  • 文件 ( 不一定)
    d 目录
    s 套接字文件 本地进程与进程之间的通讯
    l 链接文件
    c 字符设备 接收用户的输入,和系统返回的输出结果
    b 块设备 (硬盘 分区 光盘 ....)
  • 3.如何确定文件是什么类型
    file命令 (PS: linux不严格区分文件的后缀,仅仅只是为了我们好识别.)
  • 4.文件链接
    inode 索引(权限 属性 大小 唯独没有文件名) ----> block 真实数据
    软链接 多个不同的inode指向同一个block
    硬链接 多个相同的inode指向同一个block (不支持目录 也不支持跨分区)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容