El kitabı şunu mountpoint
söylüyor:
verilen dizin veya dosyadan / proc / self / mountinfo dosyasında bahsedilip bahsedilmediğini kontrol eder.
El kitabı şunu mount
söylüyor:
Listeleme modu yalnızca geriye dönük uyumluluk için korunur. Daha sağlam ve özelleştirilebilir çıktı için, özellikle betiklerinizde findmnt (8) kullanın.
Dolayısıyla , kullanılacak doğru komutfindmnt
, kendisi util-linux
paketin bir parçası olan ve kılavuza göre şudur :
/ etc / fstab, / etc / mtab veya / proc / self / mountinfo içinde arama yapabilir
Yani aslında daha fazla şey arıyor mountpoint
. Ayrıca uygun seçeneği de sağlar:
-M, --mountpoint yolu
Bağlama noktası dosyasını veya dizini açıkça tanımlayın. Ayrıca bkz. --Target.
Özet olarak, bir dizinin bash ile bağlanıp bağlanmadığını kontrol etmek için şunları kullanabilirsiniz:
if [[ $(findmnt -M "$FOLDER") ]]; then
echo "Mounted"
else
echo "Not mounted"
fi
Misal:
mkdir -p /tmp/foo/{a,b}
cd /tmp/foo
sudo mount -o bind a b
touch a/file
ls b/
rm -f b/file
ls a/
[[ $(findmnt -M b) ]] && echo "Mounted"
sudo umount b
[[ $(findmnt -M b) ]] || echo "Unmounted"