如何在Linux中使用ls命令按大小对所有文件进行排序
ls命令是列出目录内容的最流行且非常有用的命令。 在本文中,我们将解释如何使用ls sort选项按大小列出目录内容。
1)按大小列出目录中的文件(排序)
要列出具有大小排序的特定目录的内容,我们将使用-lS选项和ls命令。 它将在顶部显示最大的文件。
输出:
总用量 60
-rw-rw-r--. 1 root utmp 2304 11月 7 09:38 utmp
drwxr-xr-x. 16 root root 400 11月 7 08:04 systemd
drwxr-xr-x. 6 root root 220 11月 7 08:04 libvirt
drwxr-xr-x. 7 root root 180 11月 7 08:04 lock
drwxr-xr-x. 7 root root 160 11月 7 09:38 udev
drwxr-xr-x. 2 root root 140 11月 7 08:04 proftpd
drwxr-xr-x. 4 root root 120 11月 7 08:04 initramfs
drwxr-xr-x. 2 root root 100 11月 7 08:04 abrt
drwx--x--x. 4 root gdm 100 11月 7 08:04 gdm
drwxr-xr-x. 3 root root 100 11月 7 09:35 NetworkManager
drwxr-xr-x. 2 avahi avahi 80 11月 7 08:04 avahi-daemon
drwxr-xr-x. 2 root root 80 11月 7 08:04 console
要列出文件大小但不排序,我们将使用-s选项和ls命令。
[linuxidc@localhost ~]$ ls -s
输出:
2)列出文件大小(反向排序)
要列出具有反向排序大小的特定目录的内容(即最小文件位于顶部),我们将使用-lSr选项和ls命令。
[linuxidc@localhost ~]$ ls -lSr /run
输出:
总用量 60
-rw-------. 1 root root 0 11月 7 08:04 xtables.lock
srw-rw-rw-. 1 root root 0 11月 7 08:04 rpcbind.sock
-r--r--r--. 1 root root 0 11月 7 08:04 rpcbind.lock
srwxr-xr-x. 1 root root 0 11月 7 08:04 mcelog-client
srw-rw-rw-. 1 root root 0 11月 7 08:04 gssproxy.sock
-rw-------. 1 root root 0 11月 7 08:04 ebtables.lock
prw-------. 1 root root 0 11月 7 08:04 dmeventd-server
prw-------. 1 root root 0 11月 7 08:04 dmeventd-client
----------. 1 root root 0 11月 7 08:04 cron.reboot
-rw-r--r--. 1 root root 3 11月 7 08:04 mcelog.pid
-rw-------. 1 root root 4 11月 7 08:04 syslogd.pid
-rw-r--r--. 1 root root 4 11月 7 08:04 lvmetad.pid
-rw-r--r--. 1 root root 4 11月 7 08:04 libvirtd.pid
-rw-r--r--. 1 root root 4 11月 7 08:04 ksmtune.pid
-rw-------. 1 root root 4 11月 7 08:04 gssproxy.pid
-rw-r--r--. 1 root root 4 11月 7 08:04 chronyd.pid
3)以人类可读格式对输出和打印尺寸进行排序(例如,1K 48M 1G)
要以人类可读的格式对输出和打印大小进行排序,我们将使用-h选项和ls命令。
[linuxidc@localhost ~]$ ls -lSh
此外,我们可以以人类可读的格式打印尺寸以进行特定扩展。
[linuxidc@localhost ~]$ ls -l -S -h *.mp3
-rw-------. 1 linuxidc linuxidc 0 11月 4 20:25 linuxidc.mp3
几个基本提示
4)按字母顺序排序列表
要使用字母排序列出特定目录的内容,我们将仅使用ls命令而不使用选项,因为字母排序是默认排序。
要列出包含详细信息的特定目录的内容,请添加目录的路径。
[linuxidc@localhost ~]$ ls -l /run
总用量 60
drwxr-xr-x. 2 root root 100 11月 7 08:04 abrt
-rw-------. 1 root root 11 11月 7 08:04 alsactl.pid
-rw-r--r--. 1 root root 5 11月 7 08:04 atd.pid
-rw-r--r--. 1 root root 4 11月 7 08:04 auditd.pid
drwxr-xr-x. 2 avahi avahi 80 11月 7 08:04 avahi-daemon
drwxr-x---. 2 chrony chrony 60 11月 7 09:50 chrony
-rw-r--r--. 1 root root 4 11月 7 08:04 chronyd.pid
drwxr-xr-x. 2 root root 80 11月 7 08:04 console
-rw-r--r--. 1 root root 5 11月 7 08:04 crond.pid
----------. 1 root root 0 11月 7 08:04 cron.reboot
drwxr-xr-x. 3 root lp 80 11月 7 08:04 cups
drwxr-xr-x. 2 root root 60 11月 7 08:04 dbus
-rw-r--r--. 1 root root 5 11月 7 09:50 dhclient-ens33.pid
prw-------. 1 root root 0 11月 7 08:04 dmeventd-client
prw-------. 1 root root 0 11月 7 08:04 dmeventd-server
-rw-------. 1 root root 0 11月 7 08:04 ebtables.lock
drwxr-xr-x. 2 root root 40 11月 7 08:04 faillock
drwxr-x---. 2 root root 40 11月 7 09:35 firewalld
drwx--x--x. 4 root gdm 100 11月 7 08:04 gdm
5)按字母顺序反向排序列表
要按字母顺序反向排序列出特定目录的内容和详细信息,我们将使用-lr选项和ls命令。
[linuxidc@localhost ~]$ ls -lr /run
总用量 60
-rw-------. 1 root root 0 11月 7 08:04 xtables.lock
drwxr-xr-x. 2 root root 60 11月 7 08:04 vmware
-rw-rw-r--. 1 root utmp 2304 11月 7 09:52 utmp
drwxr-xr-x. 3 root root 60 11月 7 09:50 user
drwx------. 2 root root 60 11月 7 08:04 udisks2
drwxr-xr-x. 7 root root 160 11月 7 09:50 udev
drwxr-xr-x. 2 root root 60 11月 7 08:04 tuned
drwxr-xr-x. 2 root root 60 11月 7 08:04 tmpfiles.d
drwxr-xr-x. 16 root root 400 11月 7 08:04 systemd
-rw-------. 1 root root 4 11月 7 08:04 syslogd.pid
drwxr-xr-x. 2 root root 60 11月 7 08:04 sysconfig
drwx------. 2 root root 40 11月 7 08:04 svnserve
drwx--x--x. 3 root root 60 11月 7 08:04 sudo
-rw-r--r--. 1 root root 5 11月 7 08:04 sshd.pid
drwxr-xr-x. 2 root root 40 11月 7 08:04 spice-vdagentd
-rw-------. 1 root root 5 11月 7 08:04 sm-notify.pid
drwx--x--x. 2 setroubleshoot setroubleshoot 40 11月 7 08:04 setroubleshoot
drwxr-xr-x. 2 root root 40 11月 7 08:04 setrans
drwxr-xr-x. 2 root root 40 11月 7 08:04 sepermit
drwxr-xr-x. 2 root root 40 11月 7 08:04 samba
srw-rw-rw-. 1 root root 0 11月 7 08:04 rpcbind.sock
6)按字母顺序排序列出目录的隐藏内容
要列出特定目录的隐藏内容,我们将使用-a或--all选项和ls命令。
[linuxidc@localhost ~]$ ls -a /etc
. idmapd.conf proftpd.conf
.. init.d protocols
abrt inittab pulse
adjtime inputrc purple
akonadi iproute2 .pwd.lock
aliases ipsec.conf Python
aliases.db ipsec.d qemu-ga
alsa ipsec.secrets qemu-kvm
alternatives iscsi radvd.conf
anacrontab issue ras
asound.conf issue.net rc0.d
at.deny java rc1.d
audisp jvm rc2.d
audit jvm-commmon rc3.d
avahi kde rc4.d
bash_completion.d kde4rc rc5.d
bashrc kderc rc6.d
binfmt.d kdump.conf rc.d
blacklist.dat kernel rc.local
bluetooth krb5.conf rdma
7)按字母顺序排序列出文件
要列出指定目录的内容以及详细信息,例如文件权限,链接数,所有者的名称和组所有者,文件大小,上次修改的时间以及文件/目录名,我们将使用-l选项和ls 命令。
[linuxidc@localhost ~]$ ls -l /run
总用量 60
drwxr-xr-x. 2 root root 100 11月 7 08:04 abrt
-rw-------. 1 root root 11 11月 7 08:04 alsactl.pid
-rw-r--r--. 1 root root 5 11月 7 08:04 atd.pid
-rw-r--r--. 1 root root 4 11月 7 08:04 auditd.pid
drwxr-xr-x. 2 avahi avahi 80 11月 7 08:04 avahi-daemon
drwxr-x---. 2 chrony chrony 60 11月 7 09:50 chrony
-rw-r--r--. 1 root root 4 11月 7 08:04 chronyd.pid
drwxr-xr-x. 2 root root 80 11月 7 08:04 console
-rw-r--r--. 1 root root 5 11月 7 08:04 crond.pid
----------. 1 root root 0 11月 7 08:04 cron.reboot
drwxr-xr-x. 3 root lp 80 11月 7 08:04 cups
drwxr-xr-x. 2 root root 60 11月 7 08:04 dbus
-rw-r--r--. 1 root root 5 11月 7 09:50 dhclient-ens33.pid
prw-------. 1 root root 0 11月 7 08:04 dmeventd-client
prw-------. 1 root root 0 11月 7 08:04 dmeventd-server
-rw-------. 1 root root 0 11月 7 08:04 ebtables.lock
drwxr-xr-x. 2 root root 40 11月 7 08:04 faillock
drwxr-x---. 2 root root 40 11月 7 09:35 firewalld
您也可以使用dir命令列出文件,dir -S将按大小排序。 感谢您阅读我的文章,请留下您的宝贵意见。