智传网优云课堂,专注分享IT技术
与IT技术爱好者一起共同学习进步

无比强大的Linux ls命令家族,你会几个

1. 前言

在Linux系统中,ls有相关的命令族或者命令群的,比如lshw是查硬件信息的,lsusb是查USB设备的。本文主要介绍以ls开头的命令行工具作用以及使用案例。

2. 使用lsscsi命令查看SCSI设备或者主机属性

在Linux系统中,查看SCSI设备或者主机和它们的属性列表

[root@zcwyou ~]# lsscsi -g

输出结果
[0:0:0:0] disk VMware, VMware Virtual S 1.0 /dev/sda /dev/sg0
[2:0:0:0] cd/dvd NECVMWar VMware IDE CDR10 1.00 /dev/sr0 /dev/sg1

3. 使用lsblk命令查看块设备

[root@zcwyou ~]# lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 40G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 39G 0 part
├─centos-root 253:0 0 37G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sr0 11:0 1 918M 0 rom

查看文件系统

[root@zcwyou ~]# lsblk -f

NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 3214fea5-66c2-43cc-b39f-f7cf2d823d65 /boot
└─sda2 LVM2_member keHaHQ-3S8r-n7jf-cUmU-gluN-Hffr-LezH9P
├─centos-root xfs 05b52f24-f7f5-4132-8637-7bb972b74119 /
└─centos-swap swap fe1dd696-959b-4b0a-af89-99eab9e18ce0 [SWAP]
sr0 iso9660 CentOS 7 x86_64 2018-11-25-21-21-31-00

查看块设备相关权限

[root@zcwyou ~]# lsblk -m

NAME SIZE OWNER GROUP MODE
sda 40G root disk brw-rw—-
├─sda1 1G root disk brw-rw—-
└─sda2 39G root disk brw-rw—-
├─centos-root 37G root disk brw-rw—-
└─centos-swap 2G root disk brw-rw—-
sr0 918M root cdrom brw-rw—-

4. 使用lsb_release查看Linux发行版相关规范信息

安装lsb_release命令

[root@zcwyou ~]# yum -y install redhat-lsb-core

使用lsb_release查看Linux发行版相关规范信息

[root@zcwyou ~]# lsb_release

LSB Version: :core-4.1-amd64:core-4.1-noarch

[root@zcwyou ~]# lsb_release -a

LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.6.1810 (Core)
Release: 7.6.1810
Codename: Core

5. Linux系统使用lsusb查看USB设备信息

安装lsusb命令

[root@zcwyou ~]# yum -y install usbutils
[root@zcwyou ~]# lsusb

Linux系统使用<code>lsusb</code>查看USB设备信息” /></p>
<h2>6. Linux使用<code>lscpu</code>命令查看CPU信息</h2>
<p>使用<code>lscpu</code>可以查看CPU的架构、CPU数量、线程、核心数等等</p>
<pre><code class=[root@zcwyou ~]# lscpu

Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 2
座: 1
NUMA 节点: 1
厂商 ID: GenuineIntel
CPU 系列: 6
型号: 78
型号名称: Intel(R) Core(TM) i5-6300U CPU @ 2.40GHz
步进: 3
CPU MHz: 2495.999
BogoMIPS: 4991.99
虚拟化: VT-x
超管理器厂商: VMware
虚拟化类型: 完全
L1d 缓存: 32K
L1i 缓存: 32K
L2 缓存: 256K
L3 缓存: 3072K
NUMA 节点0 CPU: 0,1
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp flush_l1d arch_capabilities

Linux使用lscpu命令查看CPU信息

7. Linux使用lspci命令查看系统中PCI总线和连接了哪些设备

安装lspci命令

[root@CentOS7 ~]# yum provides lspci

Linux使用lspci命令查看系统中PCI总线和连接了哪些设备

[root@zcwyou ~]# lspci

8. Linux使用lshw命令查看服务器硬件详细信息

Linux安装lshw命令

[root@zcwyou ~]# yum -y install lshw

使用复杂格式查看硬件信息

[root@zcwyou ~]# lshw -short

只查看存储和控制器信息

[root@zcwyou ~]# lshw -class disk -class storage

使用HTML格式只查看网卡信息

[root@zcwyou ~]# lshw -html -class network

以图形化界面显示硬件配置信息

[root@zcwyou ~]# lshw-gtk

了解如何使用lshw命令查找有关硬盘,RAM速度,pci设备等的更多信息。您也可以使用这些Linux命令来收集有关Linux系统和硬件的信息。

9. Linux使用ls命令查看目录内容

长格式输出目录内容
ls -l

附加一个显示文件性质的字符
ls -F

查看所有文件包括隐藏文件
ls -a

递归列出子目录
ls -R

收集链接符号或目录的信息
ls -d

按修改时间对文件列表进行排序
ls -t

以人类可读的单位显示文件大小
ls -h

忽略以~符号结尾的备份文件,不显示它们
ls -B

显示SELinux安全文本
ls -Z

优先显示目录内容,服务器上使用最有用
ls –group-directories-first -l

颜色化显示输出结果
ls –color

不显示以.txt结尾的文件
ls --hide='*.txt' -l

10. 使用lsof显示正在打开的Linux文件、网络端口和进程等

列出所有正在打开的文件
lsof | less

查看正在被zcwyou用户打开的文件
lsof -u zcwyou -i

查看所有被进程号为8888的进程打开的IPv4网络文件:
lsof -i 4 -a -p 8888

查找打开或占用了80端口的进程
lsof -i TCP:80

列出被打开的IPv6网络文件
lsof -i 6

列出被打开的IPv4网络文件
lsof -i 4

列出占用TCP端口号1-1024的进程
lsof -i TCP:1-1024

列出所有占用TCP或UDP端口号为2000-2005的文件
lsof -i @127.0.0.1:2000-2005

列出在/dev/sr0设备中,所有被打开的文件
lsof /dev/sr0

查出为什么DVD光驱或者光盘无法弹出的原因
lsof /dev/dvd

查看所有被打开的文件,除了root用户的
lsof -i -u^root

查出到底是谁正在查找/etc/foobar这个文件
lsof /etc/foobar

11. 使用lsattr列出第二个扩展文件系统上的文件属性

即使你是root用户,也无法编辑或删除文件?使用lsattr列出这些文件:
lsattr /etc/passwd

使用lsattr命令给某些文件加写保护

echo 'Test' > foobar
chattr +i foobar

查看文件属性

lsattr foobar

试试用root用户删除这个文件
rm foobar

执行结果:
rm: 不能删除`foobar’: 没有操作权限

即无法修改文件:无法删除或重命名,无法为此文件创建链接,也无法将数据写入文件:

删除这个属性:

chattr -i foobar

12. 使用lshal命令查看硬件抽象层的设备数据库信息

HAL (Hardware Abstraction Layer) 提供一种简易的方式发现系统中的硬件

查看系统中的硬件信息

lshal -u /org/freedesktop/Hal/devices/computer

13. 使用lsinitramfs命令显示给定initramfs映像的内容

它允许用户快速检查一个(或多个)指定的initramfs文件的内容。这有助于找出initramfs映像中是否包含给定驱动程序(例如RAID设备驱动程序):

查看当前Linux系统中的initramfs内容

lsinitramfs /boot/initrd.img-$(uname -r)

查找是否包含透明加密或者解密驱动

lsinitramfs /boot/initrd.img-$(uname -r) | grep 'dm-'

14. 使用lsmod命令所以正在加载的设备驱动

lsmod

15. 使用lspcmcia命令

查找有关由Linux驱动的系统中存在的PCMCIA套接字和设备的信息:

lspcmcia

16. Linux使用lswm命令

使用此命令发现新的wiimotes(Wii Remote) – 任天堂Wii游戏机的主控制器。它可以与X一起使用来控制光标等等:

lswm

17. 使用lsdvd命令查看DVD光盘的内容

使用此命令读取DVD的内容并将内容打印到显示器并转储以便在外部应用程序中进一步处理。
默认输出,以人类可读的方式显示
lsdvd

查看音频信息
lsdvd -a

查看章节信息
lsdvd -c

查看字幕信息
lsdvd -s

其它功能演示
lsdvd -s -t track-number
lsdvd -a -t 1

你可以使用mplayer播放DVD中的内容
mplayer dvd://1 -dvd-device /dev/dvd

18. 使用lslk命令列出与系统本地文件关联的所有锁

lslk

19. lsmbox命令列出所有cgroup(控制组)

使用此命令列出所有cgroup(控制组),Linux内核功能用于限制,计算和隔离进程组的资源使用情况(如CPU,内存,磁盘I / O等)。

lscgroup

20. 使用lsdiff查看修补程序修改了哪些文件

对补丁中文件的顺序进行排序,您可以使用:

lsdiff patch | sort -u | xargs -rn1 filterdiff patch -i

仅显示修补程序中添加的文件:
lsdiff -s patch | grep ‘^+’ | cut -c2- | xargs -rn1 filterdiff patch -i

要显示所有文件的标题:

lsdiff -n patch | (while read n file do sed -ne "$n,$(($n+1))p" patch done)

21. 使用lspst列出MS Outlook个人文件夹的文件数据

使用此命令列出PST(MS Outlook个人文件夹)文件数据。它生成一个简单的数据列表(联系人,电子邮件主题等):
lspst mypst-file

22. 使用lsdnssec命令来模糊有关DNSSEC相关文件的信息

这些文件可以在命令行中指定,也可以在命令行中给出的目录中找到。 -d标志控制lsdnssec输出中的详细信息量。

lsdnssec file

lsdnssec显示有关其收集信息的每个区域的以下信息:

关键信息
显示关于当前使用的密钥的关键信息。包含一个条形图,显示密钥的年龄与配置的预期密钥生存时间的关系。
此信息是从lsdnssec找到的任何.krf文件中收集的。

滚动状态
如果通过rollerd滚动任何区域键,则显示滚动状态。还会显示达到下一个状态所需的时间。
此信息是从lsdnssec找到的任何.rollrec文件中收集的。

赞(0)
未经允许不得转载:Linux入门学习到精通 » 无比强大的Linux ls命令家族,你会几个
分享到: 更多 (0)

学习QQ群:557371664

关注微信公众号自助视频学习

评论 抢沙发

评论前必须登录!