当bash中有空间时如何获取挂载点的完整路径

问题描述 投票:0回答:1

我有一个UBUNTU安装U盘。 磁盘名称为“UBUNTU 22_0”,将安装在“/run/media/UBUNTU 22_0-sda1”上。 上面有一个空格,因此命令“df | grep /dev/sda | awk '{ print $6 }'”不起作用。

root@host:~# df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/root        2972456 1629696   1169092  59% /
devtmpfs          733972       4    733968   1% /dev
tmpfs             981396       0    981396   0% /dev/shm
tmpfs             392560    9544    383016   3% /run
tmpfs               4096       0      4096   0% /sys/fs/cgroup
tmpfs             981400      20    981380   1% /tmp
tmpfs             981396     232    981164   1% /var/volatile
tmpfs             196276       0    196276   0% /run/user/0
/dev/mmcblk2p2     65390       0     65390   0% /run/media/fake-mmcblk2p2
/dev/mmcblk1p1 122078208 3231488 118846720   3% /run/media/mmcblk1p1
/dev/mmcblk2p1     65390   37516     27874  58% /run/media/boot-mmcblk2p1
/dev/mmcblk2p4   4129072    1084   3894212   1% /run/media/data-mmcblk2p4
/dev/sda1        3992256 3833984    158272  97% /run/media/UBUNTU 22_0-sda1
root@host:~# df | grep /dev/sda | awk '{ print $6 }'
/run/media/UBUNTU
linux bash filesystems mount
1个回答
0
投票

通过字符位置而不是字段编号来完成。

此外,当

grep
可以匹配第一个字段本身时,无需使用
awk

df | awk '$1 == "/dev/sda1" { print substr($0, 49); }'
© www.soinside.com 2019 - 2024. All rights reserved.