3.2.8 查看文件类型:file

之前已经讲到,使用ls-l命令可以通过查看第一个字符判断文件类型。字母d代表目录、字母l代表连接文件,字母b代表块文件,字母c代表字符文件,字母s代表socket文件,字符-代表普通文件,字母p代表管道文件,而file命令则可以直接告诉我们文件类型,还能给出更多的文件信息,如下所示:


  1. #/root

  2. 是一个目录

  3. [john@localhost ~]$ file /root

  4. /root: directory

  5. #/tmp

  6. 是一个拥有sticky

  7. 属性的目录

  8. [john@localhost ~]$ file /tmp

  9. /tmp: sticky directory

  10. #

  11. 使用ls

  12. l

  13. 命令查看,显示这是一个普通文件

  14. [john@localhost ~]$ ls -l etcpasswd

  15. -rw-r--r-- 1 root root 1453 Jan 4 18:12 etcpasswd

  16. #

  17. 使用file

  18. 命令查看,显示这是一个ASCII

  19. 编码的文本文件

  20. [john@localhost ~]$ file etcpasswd

  21. etcpasswd: ASCII text

  22. #

  23. 使用ls

  24. l

  25. 命令查看,显示这是一个普通文件,看不出与etcpasswd

  26. 的差别

  27. [john@localhost ~]$ ls -l usrbin/passwd

  28. -rwsr-xr-x 1 root root 22984 Jan 7 2007 usrbin/passwd

  29. #

  30. 使用file

  31. 命令查看,显示这是一个32

  32. 位的可执行性二进制文件

  33. [john@localhost ~]$ file usrbin/passwd

  34. usrbin/passwd: setuid ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),

  35. for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped