Linux 命令(文件和目录管理 - ls)

    xiaoxiao2023-03-24  6

    简述

    ls 命令是 Linux 下最常用的命令。默认情况下,ls 用来打印当前目录的清单,如果 ls 指定其他目录,那么就会显示指定目录里的文件及文件夹清单。通过 ls 命令,不仅可以查看 Linux 文件夹包含的文件,而且可以查看文件的权限(包括:目录、文件权限)、查看目录信息等。

    | 版权声明:一去、二三里,未经博主允许不得转载。

    命令介绍

    命令名称 ls

    命令全称 list

    基本语法 ls [选项]… [文件]…

    功能描述 列出文件(默认情况下,为当前目录)的相关信息

    命令选项

    选项说明-a列出目录下所有文件,包括以 . 开头的隐藏文件-b把文件名中不可输出的字符用反斜杠加字符编号(就像 C 语言一样)的形式列出-c输出文件的 i 节点的修改时间,并以此排序-d将目录像文件一样显示,而不是显示其下的文件-e输出时间的全部信息,而不是输出简略信息-f -U对输出的文件不排序-i输出文件的 i 节点的索引信息-k以 k 字节的形式表示文件的大小-l列出文件的详细信息-m横向输出文件名,并以 , 作为分隔符-n用数字 UID、GID 代替名称-o显示文件除组信息外的详细信息-r对目录反向排序-s对每个文件名后输出该文件的大小-t以时间排序-u以文件上次被访问的时间排序-v根据版本进行排序-x按列排序,横向排序-A显示除 . 和 .. 外的所有文件-B不输出以 ~ 结尾的备份文件-C按列输出,纵向排序-G列出文件的组的信息-L列出链接文件名,而不是链接到的文件-N不限制文件长度-Q把输出的文件名用双引号扩起来-R列出所有子目录下的文件-S以文件大小排序-X以文件的扩展名(最后一个 . 后的字符)排序-1一行只输出一个文件-color=no不显示彩色文件名--help在标准输出上显示帮助信息并退出--version在标准输出上显示版本信息并退出

    文件类型

    使用 ls -l 命令查看某一目录,会得到一个包含 9 个字段的列表。第 1 行显示的信息是总用量,这个数值是该目录下所有文件占用空间的大小。接下来的每一列第 1 个字符显示文件类型。

    参数说明-表示该文件是一个普通文件d表示该文件是一个目录l表示该文件是一个链接文件b表示该文件为块设备文件c表示该文件是一个字符设备文件p表示该文件为命令管道文件s表示该文件为 sock 文件

    使用范例

    1.不带选项运行 ls

    只列出文件或者目录,看不到其他详细信息,例如:文件类型、大小、修改日期和时间、权限以及链接等。

    [wang@localhost doc]$ ls c linux php program python

    2.使用长清单模式

    使用 -l 选项(小写 L 字符),可以展示出文件类型、大小、修改日期和时间、权限以及链接等详细信息。

    [wang@localhost doc]$ ls -l 总用量 4 drwxrwxr-x. 2 wang wang 6 9月 28 15:19 c drwxrwxr-x. 2 wang wang 6 9月 28 15:19 linux drwxrwxr-x. 2 wang wang 6 9月 28 15:20 php -rw-rw-r--. 1 wang wang 42 9月 28 15:39 program drwxrwxr-x. 2 wang wang 23 9月 28 15:20 python 第 1 列:后 9 个字母表示该文件或目录的权限位,r 表示读,w 表示写,x 表示执行。前 3 个 rwx 字符是文件的拥有者权限,第二组 3 个 rwx 是文件的所属组权限,最后的 rwx 是其他人访问文件的权限。第 2 列:文件的硬链接数第 3 列:文件的拥有者第 4 列:文件的拥有者所在的组第 5 列:文件的大小,如果是目录,表示该目录的大小。注意:是目录本身的大小,而非目录及其下面的文件的总大小。第 6 列:文件或目录的最近修改时间第 7 列:文件名

    3.以易读方式列出文件

    将文件大小转变为可阅读的方式,例如:1G、20M、60K 等。(如果要以 K 为单位,可以使用 ls -lk)

    [wang@localhost /]$ ls -lh 总用量 32K lrwxrwxrwx. 1 root root 7 830 12:08 bin -> usr/bin dr-xr-xr-x. 4 root root 4.0K 830 12:37 boot drwxr-xr-x. 20 root root 3.3K 928 09:42 dev drwxr-xr-x. 136 root root 8.0K 928 12:28 etc drwxr-xr-x. 3 root root 17 830 12:34 home lrwxrwxrwx. 1 root root 7 830 12:08 lib -> usr/lib lrwxrwxrwx. 1 root root 9 830 12:08 lib64 -> usr/lib64 drwxr-xr-x. 2 root root 6 812 2015 media drwxr-xr-x. 2 root root 6 812 2015 mnt drwxr-xr-x. 3 root root 15 830 12:23 opt dr-xr-xr-x. 430 root root 0 928 09:41 proc dr-xr-x---. 19 root root 4.0K 927 14:04 root drwxr-xr-x. 37 root root 1.1K 928 12:27 run lrwxrwxrwx. 1 root root 8 830 12:08 sbin -> usr/sbin drwxr-xr-x. 2 root root 6 812 2015 srv dr-xr-xr-x. 13 root root 0 928 09:41 sys drwxrwxrwt. 15 root root 4.0K 928 14:37 tmp drwxr-xr-x. 13 root root 4.0K 830 12:08 usr drwxr-xr-x. 21 root root 4.0K 928 09:41 var

    注意:也可以使用选项 --si,和 -h 类似,但是 --si 以 1000 字节为单位,而 -h 以 1024 字节为单位(命令:ls -l --si)。

    4.列出隐藏文件

    在 Linux 中,以 . 开头的文件是隐藏文件。为了在 ls 命令中显示,可以使用 -a 选项。

    [wang@localhost doc]$ ls -a . .. c linux php program python

    5.显示时间完整格式

    [wang@localhost doc]$ ls --full-time 总用量 4 drwxrwxr-x. 2 wang wang 6 2016-09-28 15:19:54.391783895 +0800 c drwxrwxr-x. 2 wang wang 6 2016-09-28 15:19:46.325784078 +0800 linux drwxrwxr-x. 2 wang wang 6 2016-09-28 15:20:02.637783709 +0800 php -rw-rw-r--. 1 wang wang 42 2016-09-28 15:39:24.060757472 +0800 program drwxrwxr-x. 2 wang wang 23 2016-09-28 15:20:37.591782920 +0800 python

    6.列出 inode

    inode 也被称为索引,可以使用 -i 选项,inode 会显示在第一列。

    [wang@localhost doc]$ ls -li 总用量 4 101818943 drwxrwxr-x. 2 wang wang 6 9月 28 15:19 c 67364942 drwxrwxr-x. 2 wang wang 6 9月 28 15:19 linux 4243096 drwxrwxr-x. 2 wang wang 6 9月 28 15:20 php 6192271 -rw-rw-r--. 1 wang wang 42 9月 28 15:39 program 35781842 drwxrwxr-x. 2 wang wang 23 9月 28 15:20 python

    7.列出所有子目录下的文件(递归显示)

    [wang@localhost doc]$ ls -R .: c linux php program python ./c: ./linux: ./php: ./python: request.py

    8.列出主目录

    要列出主目录,可以用 ~,这样就不必输入完整的目录名 /home/wang。

    [wang@localhost doc]$ ls ~ core.3807 doc logs 公共 模板 视频 图片 文档 下载 音乐 桌面

    9.列出父(上级)目录

    使用 ../ 可以列出父目录;同理,使用 ../../ 会列出上上一级目录。

    [wang@localhost python]$ ls ../ c linux php program python

    10.显示文件的 UID 和 GID

    UID 表示 userid(用户 ID),GID 表示 groupid(组 ID)。

    [wang@localhost doc]$ ls -n 总用量 4 drwxrwxr-x. 2 1000 1000 6 9月 28 15:19 c drwxrwxr-x. 2 1000 1000 6 9月 28 15:19 linux drwxrwxr-x. 2 1000 1000 6 9月 28 15:20 php -rw-rw-r--. 1 1000 1000 42 9月 28 15:39 program drwxrwxr-x. 2 1000 1000 23 9月 28 15:20 python

    11.只列出目录条目

    如果希望只列出目录,可以使用 -d 选项。

    [wang@localhost doc]$ ls -ld /home/wang/doc/ drwxrwxr-x. 6 wang wang 63 928 15:39 /home/wang/doc/

    使用 ls */ 列出目录下所有文件,加上 -d 选项,则只显示目录。

    [wang@localhost doc]$ ls -d */ c/ linux/ php/ python/

    12.增加 / 标记目录

    如果想一眼识别目录,除了颜色、第一列的类型 d 之外,使用 -p 选项,可以为目录添加 / (斜线)。

    [wang@localhost doc]$ ls -p c/ linux/ php/ program python/

    13.倒序列出文件

    [wang@localhost doc]$ ls -r python program php linux c

    14.按文件大小排序

    使用 -S 选项会按照从大到小的次序显示。

    [wang@localhost doc]$ ls -lS 总用量 4 -rw-rw-r--. 1 wang wang 42 9月 28 15:39 program drwxrwxr-x. 2 wang wang 23 9月 28 15:20 python drwxrwxr-x. 2 wang wang 6 9月 28 15:19 c drwxrwxr-x. 2 wang wang 6 9月 28 15:19 linux drwxrwxr-x. 2 wang wang 6 9月 28 15:20 php

    15.按修改时间排序

    使用 -t 选项会按照修改时间排序,最新修改的文件在前。

    [wang@localhost doc]$ ls -lt 总用量 4 -rw-rw-r--. 1 wang wang 42 9月 28 15:39 program drwxrwxr-x. 2 wang wang 23 9月 28 15:20 python drwxrwxr-x. 2 wang wang 6 9月 28 15:20 php drwxrwxr-x. 2 wang wang 6 9月 28 15:19 c drwxrwxr-x. 2 wang wang 6 9月 28 15:19 linux

    这些都是日常操作中经常用到的,关于其他用法,可以使用 man ls 或者 ls --help 来查询手册页。

    转载请注明原文地址: https://ju.6miu.com/read-1202696.html
    最新回复(0)