首页 > 系统 > Linux > 正文

Linux ls命令查看目录下文件步骤

2024-08-27 23:56:00
字体:
来源:转载
供稿:网友
  通过学习 cd 和 pwd 命令,相信读者已经能够在庞大的 Linux 文件系统中,随心所欲地游荡并确定自己所在的位置了。本节继续来学习,如何知道某目录中存放了哪些文件或子目录。
 
  ls 命令,list 的缩写,是最常见的目录操作命令,其主要功能是显示当前目录下的内容。此命令的基本格式为:
 
  [root@localhost ~]# ls [选项] 目录名称

  选项 功能
 
  -a 显示全部的文件,包括隐藏文件(开头为 . 的文件)也一起罗列出来,这是最常用的选项之一。
 
  -A 显示全部的文件,连同隐藏文件,但不包括 . 与 .. 这两个目录。
 
  -d 仅列出目录本身,而不是列出目录内的文件数据。
 
  -f ls 默认会以文件名排序,使用 -f 选项会直接列出结果,而不进行排序。
 
  -F 在文件或目录名后加上文件类型的指示符号,例如,* 代表可运行文件,/ 代表目录,= 代表 socket 文件,| 代表 FIFO 文件。
 
  -h 以人们易读的方式显示文件或目录大小,如 1KB、234MB、2GB 等。
 
  -i 显示 inode 节点信息。
 
  -l 使用长格式列出文件和目录信息。
 
  -n 以 UID 和 GID 分别代替文件用户名和群组名显示出来。
 
  -r 将排序结果反向输出,比如,若原本文件名由小到大,反向则为由大到小。
 
  -R 连同子目录内容一起列出来,等於将该目录下的所有文件都显示出来。
 
  -S 以文件容量大小排序,而不是以文件名排序。
 
  -t 以时间排序,而不是以文件名排序。
 
  --color=never
 
  --color=always
 
  --color=auto never 表示不依据文件特性给予颜色显示。
 
  always 表示显示颜色,ls 默认采用这种方式。
 
  auto 表示让系统自行依据配置来判断是否给予颜色。
 
  --full-time 以完整时间模式 (包含年、月、日、时、分)输出
 
  --time={atime,ctime} 输出 access 时间或改变权限属性时间(ctime),而不是内容变更时间。
 
  注意,当 ls 命令不使用任何选项时,默认只会显示非隐藏文件的名称,并以文件名进行排序,同时会根据文件的具体类型给文件名配色(蓝色显示目录,白色显示一般文件)。除此之外,如果想使用 ls 命令显示更多内容,就需要使用表 1 相应的选项。
 
  【例 1】
 
  如果我们想查看某个目录的详细信息,例如:
 
  [root@localhost ~]# ls -l /root/
 
  总用量44
 
  -rw-------.1 root root 1207 1 月 14 18:18 anaconda-ks.cfg
 
  -rw-r-r--.1 root root 24772 1 月 14 18:17 install.log
 
  -rw-r-r--.1 root root 7690 1 月 14 18:17 install.log.syslog
 
  这个命令会显示目录下的内容,而不会显示这个目录本身的详细信息。如果想显示目录本身的信息,就必须加入 "-d" 选项。
 
  [root@localhost ~]# ls -ld /root/
 
  dr-xr-x---.2 root root 4096 1 月 20 12:30 /root/
 
  【例 2】
 
  [root@www ~]# ls -al ~
 
  total 156
 
  drwxr-x---  4 root root  4096 Sep 24 00:07 .
 
  drwxr-xr-x 23 root root  4096 Sep 22 12:09 ..
 
  -rw-------  1 root root  1474 Sep  4 18:27 anaconda-ks.cfg
 
  -rw-------  1 root root   955 Sep 24 00:08 .bash_history
 
  -rw-r--r--  1 root root    24 Jan  6  2007 .bash_logout
 
  -rw-r--r--  1 root root   191 Jan  6  2007 .bash_profile
 
  -rw-r--r--  1 root root   176 Jan  6  2007 .bashrc
 
  drwx------  3 root root  4096 Sep  5 10:37 .gconf
 
  -rw-r--r--  1 root root 42304 Sep  4 18:26 install.log
 
  -rw-r--r--  1 root root  5661 Sep  4 18:25 install.log.syslog
 
  通过使用 -a,你会看到以 . 为开头的几个文件,以及目录文件 (.)、(..)、.gconf 等等,这些都是隐藏的目录和文件。其中,目录文件名以蓝色显示,一般文件以白色显示。
 
  注意,Linux 系统中,隐藏文件不是为了把文件藏起来不让其他用户找到,而是为了告诉用户这些文件都是重要的系统文件,如非必要,不要乱动!所以,不论是 Linux 还是 Windows 都可以非常简单地看隐藏文件,只是在 Windows 中绝大多数的病毒和木马都会把自己变成隐藏文件,给用户带来了错觉,以为隐藏文件是为了不让用户发现。
 
  不仅如此,这里的 ls 命令还使用了 -l 选项,因此才显示出了文件的详细信息,此选项显示的这 7 列的含义分别是:
 
  第一列:规定了不同的用户对文件所拥有的权限,具体权限的含义将在后续章节中讲解。
 
  第二列:引用计数,文件的引用计数代表该文件的硬链接个数,而目录的引用计数代表该目录有多少个一级子目录。
 
  第三列:所有者,也就是这个文件属于哪个用户。默认所有者是文件的建立用户。
 
  第四列:所属组,默认所属组是文件建立用户的有效组,一般情况下就是建立用户的所在组。
 
  第五列:大小,默认单位是字节。
 
  第六列:文件修改时间,文件状态修改时间或文件数据修改时间都会更改这个时间,注意这个时间不是文件的创建时间。
 
  第七列:文件名或目录名。
 
  【例 3】
 
  "ls-l" 显示的文件大小是字节,但是我们更加习惯的是千字节用 KB 显示,兆字节用 MB 显示,而 "-h" 选项就是按照人们习惯的单位显示文件大小的,例如:
 
  [root@localhost ~]# ls -lh
 
  总用量44K
 
  -rw-------.1 root root 1.2K 1 月 14 18:18 anaconda-ks.cfg
 
  -rw-r-r--.1 root root 25K 1 月 14 18:17 install.log
 
  -rw-r-r--.1 root root 7.6K 1 月 14 18:17 install.log.syslog。
 

(编辑:武林网)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表