未安装的文件系统应显示未安装

未安装的文件系统应显示未安装

我需要检查特定文件系统是否已安装。我知道我们可以从 df -k 中找到这一点。但是在这里,如果未安装特定文件系统,则错误应显示“cronshadow(文件系统示例)未安装”。我将为您提供 df -k 的示例输出k

Filesystem            kbytes    used   avail capacity  Mounted on
/dev/dsk/c0t0d0s0    4130982 1463894 2625779    36%    /
/proc                      0       0       0     0%    /proc
fd                         0       0       0     0%    /dev/fd
mnttab                     0       0       0     0%    /etc/mnttab

/dev/dsk/c2t3d0s0    2053605 1815547  176450    92%    /psa_shdw
mmr1asxx:/crnonshdw  106687632 92602932 14084700    87%    /crnonshdw

这里我标有星号的文件系统未安装,需要显示类似---“crnonshdw未安装”的消息

答案1

这是一个简单的简单的grep

if ! df -k | grep -q 'crnonshdw'; then
    printf 'crnonshdw is not mounted\n'
fi

答案2

您还可以使用以下mount命令来查找:

$ mount | grep cronshadow

例子

$ if ! mount | grep -q "cronshadow"; then echo "not mounted";fi
not mounted

你也可以这样说:

$  mount | grep -q "cronshadow" || echo "not mounted"
not mounted

答案3

至少在我的系统上,我有一个mountpoint命令可以让您检查目录上是否安装了某些内容。所以你可以:

if ! mountpoint -q /crnonshdw; then
    echo "cronshadow(file system-example) is not mounted"
fi

或者,如果您没有该命令,一个简单的方法是确保已安装的文件系统包含一个“标志”文件,您可以测试该文件:

if ! [ -e /crnonshdw/.mounted ]; then
    echo "cronshadow(file system-example) is not mounted"
fi

当然,您也可以将标志文件放在父文件系统的目录中(当其他文件系统安装在顶部时,它将被隐藏),然后您将取出!.

相关内容