美文网首页Linux运维
day06-文件类型-笔记

day06-文件类型-笔记

作者: 一条小强强OvO | 来源:发表于2019-07-31 14:43 被阅读0次

    Day06-文件类型


    导读

    • 今日内容
      • 1.文件属性
      • 2.文件类型
      • 3.链接文件
        • 软链接
        • 软链接使用场景
        • 硬链接[了解]
        • 硬链接与软链接的区别
      • 4.命令的执行流程[扩展了解]
    • 今日总结
    • 相关命令

    今日内容

    文件属性

    [root@oldboy ~]# ll
    total 56760
    -rw-------. 1 root root     1619 Jul 29 15:27 anaconda-ks.cfg
    -rw-r--r--. 1 root root      938 Jul 29 15:52 passwd
    -rw-r--r--. 1 root root 58112885 Jul 29 16:07 web3_access.log
    
    第一列第一个字符表示文件类型
    `rw-r--r--`         权限(下周)
    `1`                 文件被链接次数
    `root`              文件的拥有者(用户)
    `root`              文件的拥有组(用户组 ==>家族)
    `1619`              文件大小
    `Jul 29 15:27`      文件的日期,以及创建文件的时间
    `anaconda-ks.cfg`   文件的名称
    

    文件类型

    file filename查看文件精准类型

    ll无法请准判断文件类型

    [root@oldboy ~]# ll /dev/
    total 0
    crw-------. 1 root root     10, 183 Jul 29 15:33 hwrng
    lrwxrwxrwx. 1 root root          25 Jul 29 15:33 initctl -> /run/systemd/initctl/fifo
    drwxr-xr-x. 3 root root         200 Jul 29 15:33 input
    crw-r--r--. 1 root root      1,  11 Jul 29 15:33 kmsg
    srw-rw-rw-. 1 root root           0 Jul 29 15:33 log
    crw-rw----. 1 root disk     10, 237 Jul 29 15:33 loop-control
    drwxr-xr-x. 2 root root         100 Jul 29 15:33 mapper
    crw-------. 1 root root     10, 227 Jul 29 15:33 mcelog
    crw-r-----. 1 root kmem      1,   1 Jul 29 15:33 mem
    drwxrwxrwt. 2 root root          40 Jul 29 15:33 mqueue
    drwxr-xr-x. 2 root root          60 Jul 29 15:33 net
    
    `-` 文件 (普通文件 图片 压缩包)
    `s` socket本地进程与进程间的一种通信方式 (mysql)
    `b` 块设备文件 (硬盘 光盘 分区)
    `c` 字符设备    用于提供用户的输入与输出
    `l` 链接文件    类似于Windows的快捷方式
    `d` 目录  类似于Windows的文件夹
    

    链接文件

    inode索引(权限 属性 大小,没有文件名)  `--->`  block真实数据
    

    软链接

    #类似于Windows的快捷方式
    [root@oldboy ~]# ln -s /root/rainbow.txt /root/rainbow
    [root@oldboy ~]# rm -f rainbow
    [root@oldboy ~]# rm -f qq && ln -s /root/qq_v1.2/ /root/qq
    
    软链接使用场景

    软件升级 软件回退

    很少对文件做软链接,一般做目录
    [root@oldboy ~]# mkdir qq_v1.1
    [root@oldboy ~]# ln -s /root/qq_v1.1/ /root/qq
    #升级
    [root@oldboy ~]# mkdir qq_v1.2
    [root@oldboy ~]# rm -f qq && ln -s /root/qq_v1.2/ /root/qq
    #回退
    [root@oldboy ~]# rm -f qq && ln -s /root/qq_v1.1/ /root/qq
    

    不方便移动的目录

    代码升级 秒级回退


    代码升级

    硬链接[了解]

    相当于创建一个副本,不支持硬链接目录
    `ln /root/file_1 /root/file_2`
    

    硬链接与软链接的区别

    软链接就是一个快捷方式,删除软链接不会影响源文件。
    硬链接类似于一个文件的副本,删除硬链接不影响源文件,只有删除所有的硬链接及其源文件才切底被删除。
    

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

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

    今日总结

    # 文件的属性
    怎么看  `ls -l`
    都是什么意思  `-->先看会的,再看不会的`
    # 文件的类型
    `-`  #文件(不一定)
    `d`  #目录
    `s`  #套接字文件,本地进程与进程之间的通信
    `l`  #链接文件
    `c`  #字符设备,接收用户的输入,和系统返回的输出结果
    `b`  #块设备(硬盘 分区 光盘 … 存储的介质)
    # 如何确定文件是什么类型的
    file filename  #查看文件是什么类型的
    Ps:Linux不区分后缀,后缀通常都是用来表示的,为了方便我们自己识别
    # 文件链接
    inode索引(权限 属性 大小,没有文件名)  `--->`  block真实数据
    软链接  #多个不同的inode指向同一个block
    硬链接  #多个相同的inode指向同一个block(不支持目录,不支持不同分区)
    

    相关命令

    hash  #查看外部命令缓存
        -d  删除单条缓存
        -r  清空缓存
    file  #查看文件类型
    ln  #创建链接文件
        -s  创建软链接
    echo  #输出,所见即所得,和程序中的 print 类似
    

    相关文章

      网友评论

        本文标题:day06-文件类型-笔记

        本文链接:https://www.haomeiwen.com/subject/tkxtdctx.html