Linux シェル,ディレクトリがマウントポイントか確認する

スポンサーリンク

鍛錬 86

Linux シェルスクリプト,ディレクトリがマウントポイントか確認する

指定したディレクトリがマウントポイントかどうかを確認するには、mountpoint を使用します。
 
使用方法は、以下に示す通りです。

マウントポイントかどうかを確認する

mountpoint ディレクトリ名

 
確認時に、結果を非表示にする

mountpoint -q ディレクトリ名

オプション

以下は、上記オプションについてです。

オプション 機能
-q 結果を非表示にする

終了ステータス

終了ステータスは、以下に示す通りです。

終了ステータス
マウントポイントである場合 0
マウントポイントではない場合 0 以外
スポンサーリンク

シェルスクリプト(結果を表示する場合)

以下は、2つのディレクトリ /mnt/test と /var/tmp が、マウントポイントかどうかを確認するシェルスクリプト、check_mountpoint.sh です。

#!/bin/sh

check_point="/mnt/test"
mountpoint $check_point
tmp=$?
echo "$check_point = $tmp"

check_point="/var/tmp"
mountpoint $check_point
tmp=$?
echo "$check_point = $tmp"
スポンサーリンク

実行結果(結果を表示する場合)

以下は、上記のシェルスクリプト check_mountpoint.sh を実行しています。

***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./check_mountpoint.sh
/mnt/test is a mountpoint
/mnt/test = 0
/var/tmp is not a mountpoint
/var/tmp = 1

上記に示した通り、/mnt/test はマウントポイントであり、/var/tmp はマウントポイントではないことが分かりました。

スポンサーリンク

シェルスクリプト(結果を表示しない場合)

前述のシェルスクリプト check_mountpoint.sh では、実行すると「/mnt/test is a mountpoint」や「/var/tmp is not a mountpoint」などの、結果を知らせる文字列が表示されています。

以下は、前述のシェルスクリプト check_mountpoint.sh について、mountpoint を実行する際にオプションの -q を付加して、結果を知らせる文字列を非表示にしています。

シェルスクリプト

#!/bin/sh

check_point="/mnt/test"
mountpoint -q $check_point
tmp=$?
echo "$check_point = $tmp"

check_point="/var/tmp"
mountpoint -q $check_point
tmp=$?
echo "$check_point = $tmp"
スポンサーリンク

実行結果(結果を表示しない場合)

以下は、上記のシェルスクリプト check_mountpoint.sh を実行しています。

***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./check_mountpoint.sh
/mnt/test = 0
/var/tmp = 1

 
上記に示した通り、結果を知らせる文字列を非表示にすることができました。

タイトルとURLをコピーしました