我想解析命令输出的列元素lsscsi
。
这是一个示例输出,
# lsscsi
[0:0:0:0] disk ATA VBOX HARDDISK 1.0 /dev/sda
[0:0:1:0] disk ATA VBOX HARDDISK 1.0 /dev/sdb
[1:0:1:0] disk ATA VBOX HARDDISK 1.0 /dev/sdc
Run Code Online (Sandbox Code Playgroud)
例如,如果我想要第 2 列,我的输出应该是,
disk
disk
disk
Run Code Online (Sandbox Code Playgroud)
如果第 7 列,
/dev/sda
/dev/sdb
/dev/sdc
Run Code Online (Sandbox Code Playgroud)
小智 6
在AWK实用工具可能是你的朋友
lsscsi | awk '{print $7}'
/dev/sda
/dev/sdb
/dev/sdc
lsscsi | awk '{print $2}'
disk
disk
disk
Run Code Online (Sandbox Code Playgroud)
或者你可以使用cut但你可能需要先弄乱空格
lsscsi | sed 's/ \+/ /g' | cut -f7 -d' '
Run Code Online (Sandbox Code Playgroud)