Linux中ls命令主要用来做什么
发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,这篇文章将为大家详细讲解有关Linux中ls命令主要用来做什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Linux常用命令ls命令 用来显示目标列表,在Linu
千家信息网最后更新 2025年01月16日Linux中ls命令主要用来做什么
这篇文章将为大家详细讲解有关Linux中ls命令主要用来做什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
Linux常用命令ls命令 用来显示目标列表,在Linux中是使用率较高命令。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。
ls
显示目录内容列表
补充说明
语法
ls [选项] [文件名...] [-1abcdfgiklmnopqrstuxABCDFGLNQRSUX] [-w cols] [-T cols] [-I pattern] [--full-time] [--format={long,verbose,commas,across,vertical,single-col‐umn}] [--sort={none,time,size,extension}] [--time={atime,access,use,ctime,status}] [--color[={none,auto,always}]] [--help] [--version] [--]
选项
-C # 多列输出,纵向排序。 -F # 每个目录名加 "/" 后缀,每个 FIFO 名加 "|" 后缀, 每个可运行名加" * "后缀。 -R # 递归列出遇到的子目录。 -a # 列出所有文件,包括以 "." 开头的隐含文件。 -c # 使用"状态改变时间"代替"文件修改时间"为依据来排序(使用"-t"选项时)或列出(使用"-l"选项时)。 -d # 将目录名像其它文件一样列出,而不是列出它们的内容。 -i # 输出文件前先输出文件系列号(即 i 节点号: i-node number)。 -l 列出(以单列格式)文件模式 # (file mode),文件的链接数,所有者名,组名,文件大小(以字节为单位),时间信息,及文件名。 # 缺省时,时间信息显示最近修改时间;可以以选项"-c"和"-u"选择显示其它两种时间信息。对于设备文件, # 原先显示文件大小的区域通常显示的是主要和次要的信号(majorand minor device numbers)。 -q # 将文件名中的非打印字符输出为问号。(对于到终端的输出这是缺省的。) -r # 逆序排列。 -t # 按时间信息排序。 -u # 使用最近访问时间代替最近修改时间为依据来排序(使用"-t"选项时)或列出(使用"-l"选项时)。 -1 # 单列输出。 -1, --format=single-column # 一行输出一个文件(单列输出)。如标准输出不是到终端,此选项就是缺省选项。 -a, --all # 列出目录中所有文件,包括以"."开头的文件。 -b, --escape # 把文件名中不可输出的字符用反斜杠加字符编号(就像在 C 语言里一样)的形式列出。 -c, --time=ctime, --time=status # 按文件状态改变时间(i节点中的ctime)排序并输出目录内 # 容。如采用长格式输出(选项"-l"),使用文件的状态改 # 变时间取代文件修改时间。【译注:所谓文件状态改变(i节 # 点中以ctime标志),既包括文件被修改,又包括文件属性( 如所有者、组、链接数等等)的变化】 -d, --directory # 将目录名像其它文件一样列出,而不是列出它们的内容。 -f # 不排序目录内容;按它们在磁盘上存储的顺序列出。同时启 动" -a "选项,如果在" -f "之前存在" -l"、 # " - -color "或" -s ",则禁止它们。 -g # 忽略,为兼容UNIX用。 -i, --inode # 在每个文件左边打印 i 节点号(也叫文件序列号和索引号: file serial number and index num‐ # ber)。i节点号在每个特定的文件系统中是唯一的。 -k, --kilobytes # 如列出文件大小,则以千字节KB为单位。 -l, --format=long, --format=verbose # 除每个文件名外,增加显示文件类型、权限、硬链接数、所 有者名、组名、大小( byte # )、及时间信息(如未指明是 其它时间即指修改时间)。对于6个月以上的文件或超出未来 1 # 小时的文件,时间信息中的时分将被年代取代。 # 每个目录列出前,有一行"总块数"显示目录下全部文件所 占的磁盘空间。块默认是 1024 # 字节;如果设置了 POSIXLY_CORRECT 的环境变量,除非用" -k "选项,则默认块大小是 512 字 # 节。每一个硬链接都计入总块数(因此可能重复计数),这无 疑是个缺点。 # 列出的权限类似于以符号表示(文件)模式的规范。但是 ls # 在每套权限的第三个字符中结合了多位( multiple bits ) 的信息,如下: s 如果设置了 setuid # 位或 setgid 位,而且也设置了相应的可执行位。 S 如果设置了 setuid 位或 setgid # 位,但是没有设置相应的可执行位。 t 如果设置了 sticky 位,而且也设置了相应的可执行位。 T # 如果设置了 sticky 位,但是没有设置相应的可执行位。 x # 如果仅仅设置了可执行位而非以上四种情况。 - 其它情况(即可执行位未设置)。 -m, --format=commas # 水平列出文件,每行尽可能多,相互用逗号和一个空格分隔。 -n, --numeric-uid-gid # 列出数字化的 UID 和 GID 而不是用户名和组名。 -o # 以长格式列出目录内容,但是不显示组信息。等于使用" --format=long --no-group # "选项。提供此选项是为了与其它版本的 ls 兼容。 -p # 在每个文件名后附上一个字符以说明该文件的类型。类似" -F "选项但是不 标示可执行文件。 -q, --hide-control-chars # 用问号代替文件名中非打印的字符。这是缺省选项。 -r, --reverse # 逆序排列目录内容。 -s, --size # 在每个文件名左侧输出该文件的大小,以 1024 字节的块为单位。如果设置了 POSIXLY_CORRECT # 的环境变量,除非用" -k "选项,块大小是 512 字节。 -t, --sort=time # 按文件最近修改时间( i 节点中的 mtime )而不是按文件名字典序排序,新文件 靠前。 -u, --time=atime, --time=access, --time=use # 类似选项" -t ",但是用文件最近访问时间( i 节点中的 atime )取代文件修 # 改时间。如果使用长格式列出,打印的时间是最近访问时间。 -w, --width cols # 假定屏幕宽度是 cols ( cols 以实际数字取代)列。如未用此选项,缺省值是这 # 样获得的:如可能先尝试取自终端驱动,否则尝试取自环境变量 COLUMNS (如果设 # 置了的话),都不行则取 80 。 -x, --format=across, --format=horizontal # 多列输出,横向排序。 -A, --almost-all # 显示除 "." 和 ".." 外的所有文件。 -B, --ignore-backups # 不输出以" ~ "结尾的备份文件,除非已经在命令行中给出。 -C, --format=vertical # 多列输出,纵向排序。当标准输出是终端时这是缺省项。使用命令名 dir 和 d 时, 则总是缺省的。 -D, --dired # 当采用长格式("-l"选项)输出时,在主要输出后,额外打印一行: //DIRED// BEG1 END1 BEG2 # END2 ... # BEGn 和 ENDn 是无符号整数,记录每个文件名的起始、结束位置在输出中的位置( # 字节偏移量)。这使得 Emacs 易于找到文件名,即使文件名包含空格或换行等非正 # 常字符也无需特异的搜索。 # # 如果目录是递归列出的(" -R "选项),每个子目录后列出类似一行: # //SUBDIRED// BEG1 END1 ... 【译注:我测试了 TurboLinux4.0 和 RedHat6.1 ,发现它们都是在 " # //DIRED// BEG1... "之后列出" //SUBDIRED// BEG1 ... ",也即只有一个 # 而不是在每个子目录后都有。而且" //SUBDIRED// BEG1 ... "列出的是各个子目 录名的偏移。】 -F, --classify, --file-type # 在每个文件名后附上一个字符以说明该文件的类型。" * "表示普通的可执行文件; " / "表示目录;" # @ "表示符号链接;" | "表示FIFOs;" = "表示套接字 (sockets) ;什么也没有则表示普通文件。 -G, --no-group # 以长格式列目录时不显示组信息。 -I, --ignorepattern # 除非在命令行中给定,不要列出匹配shell文件名匹配式(pattern ,不是指一般 # 表达式)的文件。在shell中,文件名以"."起始的不与在文件名匹配式(pattern) # 开头的通配符匹配。 -L, --dereference # 列出符号链接指向的文件的信息,而不是符号链接本身。 -N, --literal # 不要用引号引起文件名。 -Q, --quote-name # 用双引号引起文件名,非打印字符以 C 语言的方法表示。 -R, --recursive # 递归列出全部目录的内容。 -S, --sort=size # 按文件大小而不是字典序排序目录内容,大文件靠前。 -T, --tabsize cols # 假定每个制表符宽度是 cols 。缺省为 8。为求效率, ls 可能在输出中使用制表符。 若 cols 为 0,则不使用制表符。 -U, --sort=none # 不排序目录内容;按它们在磁盘上存储的顺序列出。(选项"-U"和"-f"的不 # 同是前者不启动或禁止相关的选项。)这在列很大的目录时特别有用,因为不加排序 # 能显著地加快速度。 -X, --sort=extension # 按文件扩展名(由最后的 "." 之后的字符组成)的字典序排序。没有扩展名的先列 出。 --color[=when] # 指定是否使用颜色区别文件类别。环境变量 LS_COLORS 指定使用的颜色。如何设置 这个变量见 dir‐ # colors(1) 。 when 可以被省略,或是以下几项之一: none # 不使用颜色,这是缺省项。 # auto 仅当标准输出是终端时使用。 always 总是使用颜色。指定 --color 而且省略 when 时就等同于 # --color=always 。 --full-time # 列出完整的时间,而不是使用标准的缩写。格式如同 date(1) 的缺省格式;此格式 # 是不能改变的,但是你可以用 cut(1) 取出其中的日期字串并将结果送至命令 " date -d "。 # 输出的时间包括秒是非常有用的。( Unix 文件系统储存文件的时间信息精确到秒, # 因此这个选项已经给出了系统所知的全部信息。)例如,当你有一个 Makefile 文件 # 不能恰当地生成文件时,这个选项会提供帮助。
参数
目录:指定要显示列表的目录,也可以是具体的文件。
实例
$ ls # 仅列出当前目录可见文件 $ ls -l # 列出当前目录可见文件详细信息 $ ls -hl # 列出详细信息并以可读大小显示文件大小 $ ls -al # 列出所有文件(包括隐藏)的详细信息 $ ls --human-readable --size -1 -S --classify # 按文件大小排序 $ du -sh * | sort -h # 按文件大小排序(同上)
显示当前目录下包括影藏文件在内的所有文件列表
[root@localhost ~]# ls -a . anaconda-ks.cfg .bash_logout .bashrc install.log .mysql_history satools .tcshrc .vimrc .. .bash_history .bash_profile .cshrc install.log.syslog .rnd .ssh .viminfo
输出长格式列表
[root@localhost ~]# ls -1 anaconda-ks.cfg install.log install.log.syslog satools
显示文件的inode信息
索引节点(index inode简称为"inode")是Linux中一个特殊的概念,具有相同的索引节点号的两个文本本质上是同一个文件(除文件名不同外)。
[root@localhost ~]# ls -i -l anaconda-ks.cfg install.log 2345481 -rw------- 1 root root 859 Jun 11 22:49 anaconda-ks.cfg 2345474 -rw-r--r-- 1 root root 13837 Jun 11 22:49 install.log
水平输出文件列表
[root@localhost /]# ls -m bin, boot, data, dev, etc, home, lib, lost+found, media, misc, mnt, opt, proc, root, sbin, selinux, srv, sys, tmp, usr, var
修改最后一次编辑的文件
最近修改的文件显示在最上面。
[root@localhost /]# ls -t tmp root etc dev lib boot sys proc data home bin sbin usr var lost+found media mnt opt selinux srv misc
显示递归文件
[root@localhost ~]# ls -R.:anaconda-ks.cfg install.log install.log.syslog satools./satools:black.txt freemem.sh iptables.sh lnmp.sh mysql php502_check.sh ssh_safe.sh
打印文件的UID和GID
[root@localhost /]# ls -ntotal 254drwxr-xr-x 2 0 0 4096 Jun 12 04:03 bindrwxr-xr-x 4 0 0 1024 Jun 15 14:45 bootdrwxr-xr-x 6 0 0 4096 Jun 12 10:26 datadrwxr-xr-x 10 0 0 3520 Sep 26 15:38 devdrwxr-xr-x 75 0 0 4096 Oct 16 04:02 etcdrwxr-xr-x 4 0 0 4096 Jun 12 10:26 homedrwxr-xr-x 14 0 0 12288 Jun 16 04:02 libdrwx------ 2 0 0 16384 Jun 11 22:46 lost+founddrwxr-xr-x 2 0 0 4096 May 11 2011 mediadrwxr-xr-x 2 0 0 4096 Nov 8 2010 miscdrwxr-xr-x 2 0 0 4096 May 11 2011 mntdrwxr-xr-x 2 0 0 4096 May 11 2011 optdr-xr-xr-x 232 0 0 0 Jun 15 11:04 procdrwxr-x--- 4 0 0 4096 Oct 15 14:43 rootdrwxr-xr-x 2 0 0 12288 Jun 12 04:03 sbindrwxr-xr-x 2 0 0 4096 May 11 2011 selinuxdrwxr-xr-x 2 0 0 4096 May 11 2011 srvdrwxr-xr-x 11 0 0 0 Jun 15 11:04 sysdrwxrwxrwt 3 0 0 98304 Oct 16 08:45 tmpdrwxr-xr-x 13 0 0 4096 Jun 11 23:38 usrdrwxr-xr-x 19 0 0 4096 Jun 11 23:38 var
列出文件和文件夹的详细信息
[root@localhost /]# ls -ltotal 254drwxr-xr-x 2 root root 4096 Jun 12 04:03 bindrwxr-xr-x 4 root root 1024 Jun 15 14:45 bootdrwxr-xr-x 6 root root 4096 Jun 12 10:26 datadrwxr-xr-x 10 root root 3520 Sep 26 15:38 devdrwxr-xr-x 75 root root 4096 Oct 16 04:02 etcdrwxr-xr-x 4 root root 4096 Jun 12 10:26 homedrwxr-xr-x 14 root root 12288 Jun 16 04:02 libdrwx------ 2 root root 16384 Jun 11 22:46 lost+founddrwxr-xr-x 2 root root 4096 May 11 2011 mediadrwxr-xr-x 2 root root 4096 Nov 8 2010 miscdrwxr-xr-x 2 root root 4096 May 11 2011 mntdrwxr-xr-x 2 root root 4096 May 11 2011 optdr-xr-xr-x 232 root root 0 Jun 15 11:04 procdrwxr-x--- 4 root root 4096 Oct 15 14:43 rootdrwxr-xr-x 2 root root 12288 Jun 12 04:03 sbindrwxr-xr-x 2 root root 4096 May 11 2011 selinuxdrwxr-xr-x 2 root root 4096 May 11 2011 srvdrwxr-xr-x 11 root root 0 Jun 15 11:04 sysdrwxrwxrwt 3 root root 98304 Oct 16 08:48 tmpdrwxr-xr-x 13 root root 4096 Jun 11 23:38 usrdrwxr-xr-x 19 root root 4096 Jun 11 23:38 var
列出可读文件和文件夹详细信息
[root@localhost /]# ls -lhtotal 254Kdrwxr-xr-x 2 root root 4.0K Jun 12 04:03 bindrwxr-xr-x 4 root root 1.0K Jun 15 14:45 bootdrwxr-xr-x 6 root root 4.0K Jun 12 10:26 datadrwxr-xr-x 10 root root 3.5K Sep 26 15:38 devdrwxr-xr-x 75 root root 4.0K Oct 16 04:02 etcdrwxr-xr-x 4 root root 4.0K Jun 12 10:26 homedrwxr-xr-x 14 root root 12K Jun 16 04:02 libdrwx------ 2 root root 16K Jun 11 22:46 lost+founddrwxr-xr-x 2 root root 4.0K May 11 2011 mediadrwxr-xr-x 2 root root 4.0K Nov 8 2010 miscdrwxr-xr-x 2 root root 4.0K May 11 2011 mntdrwxr-xr-x 2 root root 4.0K May 11 2011 optdr-xr-xr-x 235 root root 0 Jun 15 11:04 procdrwxr-x--- 4 root root 4.0K Oct 15 14:43 rootdrwxr-xr-x 2 root root 12K Jun 12 04:03 sbindrwxr-xr-x 2 root root 4.0K May 11 2011 selinuxdrwxr-xr-x 2 root root 4.0K May 11 2011 srvdrwxr-xr-x 11 root root 0 Jun 15 11:04 sysdrwxrwxrwt 3 root root 96K Oct 16 08:49 tmpdrwxr-xr-x 13 root root 4.0K Jun 11 23:38 usrdrwxr-xr-x 19 root root 4.0K Jun 11 23:38 var
显示文件夹信息
[root@localhost /]# ls -ld /etc/drwxr-xr-x 75 root root 4096 Oct 16 04:02 /etc/
按时间列出文件和文件夹详细信息
[root@localhost /]# ls -lttotal 254drwxrwxrwt 3 root root 98304 Oct 16 08:53 tmpdrwxr-xr-x 75 root root 4096 Oct 16 04:02 etcdrwxr-x--- 4 root root 4096 Oct 15 14:43 rootdrwxr-xr-x 10 root root 3520 Sep 26 15:38 devdrwxr-xr-x 14 root root 12288 Jun 16 04:02 libdrwxr-xr-x 4 root root 1024 Jun 15 14:45 bootdrwxr-xr-x 11 root root 0 Jun 15 11:04 sysdr-xr-xr-x 232 root root 0 Jun 15 11:04 procdrwxr-xr-x 6 root root 4096 Jun 12 10:26 datadrwxr-xr-x 4 root root 4096 Jun 12 10:26 homedrwxr-xr-x 2 root root 4096 Jun 12 04:03 bindrwxr-xr-x 2 root root 12288 Jun 12 04:03 sbindrwxr-xr-x 13 root root 4096 Jun 11 23:38 usrdrwxr-xr-x 19 root root 4096 Jun 11 23:38 vardrwx------ 2 root root 16384 Jun 11 22:46 lost+founddrwxr-xr-x 2 root root 4096 May 11 2011 mediadrwxr-xr-x 2 root root 4096 May 11 2011 mntdrwxr-xr-x 2 root root 4096 May 11 2011 optdrwxr-xr-x 2 root root 4096 May 11 2011 selinuxdrwxr-xr-x 2 root root 4096 May 11 2011 srvdrwxr-xr-x 2 root root 4096 Nov 8 2010 misc
按修改时间列出文件和文件夹详细信息
[root@localhost /]# ls -ltrtotal 254drwxr-xr-x 2 root root 4096 Nov 8 2010 miscdrwxr-xr-x 2 root root 4096 May 11 2011 srvdrwxr-xr-x 2 root root 4096 May 11 2011 selinuxdrwxr-xr-x 2 root root 4096 May 11 2011 optdrwxr-xr-x 2 root root 4096 May 11 2011 mntdrwxr-xr-x 2 root root 4096 May 11 2011 mediadrwx------ 2 root root 16384 Jun 11 22:46 lost+founddrwxr-xr-x 19 root root 4096 Jun 11 23:38 vardrwxr-xr-x 13 root root 4096 Jun 11 23:38 usrdrwxr-xr-x 2 root root 12288 Jun 12 04:03 sbindrwxr-xr-x 2 root root 4096 Jun 12 04:03 bindrwxr-xr-x 4 root root 4096 Jun 12 10:26 homedrwxr-xr-x 6 root root 4096 Jun 12 10:26 datadr-xr-xr-x 232 root root 0 Jun 15 11:04 procdrwxr-xr-x 11 root root 0 Jun 15 11:04 sysdrwxr-xr-x 4 root root 1024 Jun 15 14:45 bootdrwxr-xr-x 14 root root 12288 Jun 16 04:02 libdrwxr-xr-x 10 root root 3520 Sep 26 15:38 devdrwxr-x--- 4 root root 4096 Oct 15 14:43 rootdrwxr-xr-x 75 root root 4096 Oct 16 04:02 etcdrwxrwxrwt 3 root root 98304 Oct 16 08:54 tmp
按照特殊字符对文件进行分类
[root@localhost nginx-1.2.1]# ls -Fauto/ CHANGES CHANGES.ru conf/ configure* contrib/ html/ LICENSE Makefile man/ objs/ README src/
列出文件并标记颜色分类
[root@localhost nginx-1.2.1]# ls --color=autoauto CHANGES CHANGES.ru conf configure contrib html LICENSE Makefile man objs README src
关于"Linux中ls命令主要用来做什么"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
文件
时间
输出
目录
信息
文件名
排序
大小
字符
命令
内容
格式
节点
链接
字节
变量
文件夹
符号
终端
颜色
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
超微服务器 raid
数据库公网与本地访问区别
服务器端口开的多安全隐患大吗
数据库0x80070bc9
研发科技公司是互联网吗
网络安全升级改造服务
组态王做服务器和数采仪
软件开发项目的造价和评估
个人网盘怎么弄mc服务器
设备调试数据库
公安网络安全措施
数据库管理系统的预处理功能
emule安全服务器
电脑联不到数据库
数据库技术实用教程视频
网络安全环保网络安全测评
网络安全工程师分为几种
数据库dba难不难
亚捷果业APP软件开发
广州业务流程外贸软件开发
海珠软件开发院校技工
软件开发的老板不懂技术
国外网络技术是ftth
微信运动和软件同步数据库
DNS服务器是管理服务器吗
全国软件开发薪水
西安本科有网络安全专业的大学
智能手机软件开发
远程服务器账户无缘无故没了
适合网络安全的哲学标准