1

【技术积累】Linux中的命令行【理论篇】【九】

 1 year ago
source link: https://www.cnblogs.com/yyyyfly1/p/17636508.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

blkid命令

blkid命令是一个用于查看块设备属性的Linux命令。它可以识别和显示块设备的文件系统类型、UUID、LABEL、PARTUUID等信息。

在Linux下可以使用 blkid命令 对查询设备上所采用文件系统类型进行查询。blkid主要用来对系统的块设备(包括交换分区)所使用的文件系统类型、LABEL、UUID等信息进行查询。要使用这个命令必须安装e2fsprogs软件包。

blkid -L | -U
blkid [-c ] [-ghlLv] [-o] [-s ][-t ] -[w ] [ ...]
blkid -p [-s ] [-O ] [-S ][-o] ...
blkid -i [-s ] [-o] ...
-c <file>   # 指定cache文件(default: /etc/blkid.tab, /dev/null = none)
-d          # don't encode non-printing characters
-h          # 显示帮助信息
-g          # garbage collect the blkid cache
-o <format> # 指定输出格式
-k          # list all known filesystems/RAIDs and exit
-s <tag>    # 显示指定信息,默认显示所有信息
-t <token>  # find device with a specific token (NAME=value pair)
-l          # look up only first device with token specified by -t
-L <label>  # convert LABEL to device name
-U <uuid>   # convert UUID to device name
-v          # 显示版本信息
-w <file>   # write cache to different file (/dev/null = no write)
<dev>       # specify device(s) to probe (default: all devices)
Low-level probing options:
-p          # low-level superblocks probing (bypass cache)
-i          # gather information about I/O limits
-S <size>   # overwrite device size
-O <offset> # probe at the given offset
-u <list>   # filter by "usage" (e.g. -u filesystem,raid)
-n <list>   # filter by filesystem type (e.g. -n vfat,ext3)

1、列出当前系统中所有已挂载文件系统的类型:

sudo blkid

2、显示指定设备 UUID:

sudo blkid -s UUID /dev/sda5

3、显示所有设备 UUID:

sudo blkid -s UUID

4、显示指定设备 LABEL:

sudo blkid -s LABEL /dev/sda5

5、显示所有设备 LABEL:

sudo blkid -s LABEL

6、显示所有设备文件系统:

sudo blkid -s TYPE

7、显示所有设备:

sudo blkid -o device

8、以列表方式查看详细信息:

sudo blkid -o list

blockdev命令

blockdev命令是Linux系统中的一个工具,用于查看和修改块设备的属性。块设备是指以固定大小的块为单位进行读写的设备,如硬盘、SSD等。

blockdev命令的常用选项和功能如下:

1. -v 或 --verbose:显示详细信息。
2. -q 或 --quiet:只显示关键信息,不显示冗余信息。
3. -r 或 --report:显示块设备的报告信息。
4. -d 或 --getsize64:显示块设备的大小(以字节为单位)。
5. -s 或 --getsz:显示块设备的大小(以扇区为单位)。
6. -i 或 --getss:显示块设备的扇区大小。
7. -o 或 --getro:显示块设备的只读属性。
8. -w 或 --setrw:将块设备设置为可读写。
9. -r 或 --setro:将块设备设置为只读。
10. -c 或 --setra:设置块设备的读取ahead值。
11. -a 或 --getra:显示块设备的读取ahead值。
12. -S 或 --setbsz:设置块设备的块大小。
13. -B 或 --getbsz:显示块设备的块大小。
14. -L 或 --setlabel:设置块设备的卷标。
15. -F 或 --flushbufs:刷新块设备的缓冲区。

使用blockdev命令可以获取块设备的各种属性信息,如设备大小、扇区大小、只读属性等。同时,还可以通过blockdev命令修改块设备的属性,如设置只读属性、设置读取ahead值等。

例如,要获取块设备/dev/sda的大小,可以使用以下命令:

blockdev --getsize64 /dev/sda

要将块设备/dev/sdb设置为只读,可以使用以下命令:

blockdev --setro /dev/sdb

总之,blockdev命令是一个非常有用的工具,可以帮助用户管理和配置Linux系统中的块设备。

bmodinfo

显示给定模块的详细信息

bmodinfo命令 用于显示给定模块的详细信息。

bmodinfo(选项)(参数)
-a:显示模块作者;
-d:显示模块的描述信息;
-l:显示模块的许可信息;
-p:显示模块的参数信息;
-n:显示模块对应的文字信息;
-0:用ASCII码的0字符分割字段值,而不使用新行。

模块名:要显示详细信息的模块名称。

显示sg模块的信息:

[root@localhost ~]# modinfo sg
filename:    /lib/modules/2.6.9-42.ELsmp/kernel/drivers/scsi/sg.ko
author:     Douglas Gilbert
description:  SCSI generic (sg) driver
license:    GPL
version:    3.5.31 B0B0CB1BB59F0669A1F0D6B
parm:      def_reserved_size:size of buffer reserved for each fd
parm:      allow_dio:allow direct I/O (default: 0 (disallow))
alias:     char-major-21-*
vermagic:    2.6.9-42.ELsmp SMP 686 REGPARM 4KSTACKS gcc-3.4
depends:    scsi_mod

break命令

在Linux中,break命令用于在循环语句中提前终止循环。它可以用于for、while和until循环。

break命令的语法如下:

break [n]

其中,n是一个可选的参数,用于指定要终止的循环层数。如果不提供n,则默认为1,表示终止当前循环。如果提供了n,则表示终止第n层循环。

当break命令被执行时,循环会立即终止,并且程序会继续执行循环后的代码。

以下是break命令的一些使用示例:

1. 在for循环中使用break命令:

for i in {1..10}
do
    if [ $i -eq 5 ]
    then
        break
    fi
    echo $i
done

上述代码会输出数字1到4,当$i的值等于5时,break命令被执行,循环终止。

2. 在while循环中使用break命令:

count=1
while [ $count -le 10 ]
do
    if [ $count -eq 5 ]
    then
        break
    fi
    echo $count
    count=$((count+1))
done

上述代码会输出数字1到4,当$count的值等于5时,break命令被执行,循环终止。

3. 在嵌套循环中使用break命令:

for i in {1..3}
do
    echo "Outer loop: $i"
    for j in {1..3}
    do
        echo "Inner loop: $j"
        if [ $j -eq 2 ]
        then
            break 2
        fi
    done
done

上述代码中,break 2表示终止两层循环。当$j的值等于2时,内部循环和外部循环都会被终止。

总结:break命令是Linux中用于提前终止循环的命令,它可以在for、while和until循环中使用,并且可以指定要终止的循环层数。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK