• 3.5 Linux命令行下如何识别文件类型?


    对于第一次使用 Linux 命令行的用户,可能真的搞不清楚哪个是文件,哪个是目录,究其原因是很难直接通过名字看出来目录和文件的区别。

    虽然从名称上不容易分辨,但是可以从颜色上进行区分。一般情况下,Linux 用蓝色代表目录,其他颜色则表示是文件。例如:

    图 1 /root 目录下的文件和目录

    注意,本节多处会使用 pwd(显示当前工作所在的目录)和 ls(列出当前目录中包含的所有文件和子目录)命令,读者只需了解它们的功能即可,本章后续会对它们做详细介绍。

    和 Linux 不同,Windows 下带有<DIR> 标记的行或使用中括号“[]”括起来的名称就是目录,其他的则是文件(如图 2 所示)。

    图 2 Windows命令行区分文件和目录(文件夹)

    不仅如此,Linux 中还可以用不同的颜色来区分不同种类的文件,例如绿色代表可执行文件、红色代表压缩文件、浅绿色代表链接文件、白色代表其他文件、黄色代表设备文件等。

    但是,不同颜色所代表的文件类型不一定是这样,更准确的对应方式还取决于配置文件 /etc/DIR_COLORS 中的规定。因此,如果想详细了解不同文件类型所对应的颜色,可以使用 man 命令,例如:

    [root@localhost ~]# man dir_colors
    

    注意,有些 Linux 发行版单独使用 ls 命令,无法显示出带有不同颜色的文件和目录,此时就需要使用 ls --color=auto 命令,明确令其使用颜色来区分文件类型。

    在此基础上,如果不想每次使用 ls 命令时,都显式附带 --color=auto,可以执行如下命令:

    [root@localhost ~]# alias ls = 'ls --color=auto'
    

    通过给 ls --color==auto 这个整体设置一个别名 ls,这样当后续使用 ls 命令时,就等同于执行 ls --color=auto 命令。

    同时,如果想使这个设置永远生效,还需要将其添加到 /etc/bashrc 或 /home//.bashrc 文件中,前者对所有用户有效,而后者仅对用户有效。

    其实,那些默认提供颜色功能的 Linux 发行版,也是通过这个方法开启的功能。

    当然,通过颜色来区分文件类型,难免有些牵强,对于颜色不太敏感的读者来说,很容易搞错。Linux 中精确判断文件类型的方法,是通过文件本身所具有的属性进行判断。

    通过 ls -l 命令,我们就可以查看当前目录下所有文件和目录各自的属性,如图 3 所示。

    图 3 查看属性

    图 3 显示的执行结构中,每行代表一个文件或目录,其中第一个字符表示的就是文件的类型,其可能的取值以及表示的文件类型,如表 4 所示。

    第一个字符 文件类型
    - 普通文件,包括纯文本文件、二进制文件、各种压缩文件等。
    d 目录,类似 Windows 系统中的文件夹。
    b 块设备文件,就是保存大块数据的设备,比如最常见的硬盘。
    c 字符设备文件,例如键盘、鼠标等。
    s 套接字文件,通常用在网络数据连接,可以启动一个程序开监听用户的要求,用户可以通过套接字进行数据通信。
    p 管道文件,其主要作用是解决多个程序同时存取一个文件所造成的错误。
    l 链接文件,类似 Windows 系统中的快捷方式。

    除以上 2 种方法外,Linux 还提供了 file 命令,可以查询文件的类型,有关该命令的用法,可阅读《Linux file命令》一节。

  • 相关阅读:
    JPA01
    mybatis入门
    PHP 循环- While循环
    PHP超级全局变量
    PHP 数组排序
    PHP数组
    PHP Switch语句
    PHP IF...Else语句
    PHP运算符
    PHP字符串变量
  • 原文地址:https://www.cnblogs.com/qinlulu/p/16226805.html
Copyright © 2020-2023  润新知