2012-01-12 43 views
1

我的問題有太多的關鍵字,以谷歌這:) :)我有一個bash腳本,並希望測試一個目錄是否只是因爲mountI在腳本中做了poupulated。 IOW,以下事件發生了:有沒有一種方法來測試一個目錄內容是否只是因爲掛載而存在?

1)目錄與-p參數,如創建:mkdir -p myDir

2)已經確定,該系統使用VirtualBox的:

if [ -f /sbin/mount.vboxsf ] 
then 
    echo "VirtualBox has been detected Please provide your home/user name and hit [Enter]" 
    echo "If no name is given, NetBeans will be installed and script will exit Otherwise an attempt will be made 
    to mount NetBeansProjects from the host. If this succeeds, an attempt will be made to automatically do this 
    during system start up." 
    read user 
fi 

現在我嘗試一個冒失的mount到'myDir'

有沒有一種方法來測試這個Projects目錄之後根據內容? IOW,該目錄不是空的,我需要確定內容在那裏,因爲我登錄到目錄,而不是因爲目錄已經包含它們。

謝謝,絲蘭

+0

如果你在某個路徑掛載文件系統時,新的文件系統將陰影的一切,以前一直在這條道路,所以你需要檢查是如果該目錄目前是掛載點。 (做後者的一種方法可能是調用'df myDir'並檢查輸出中的裝入點是否與'myDir'匹配。) – 2012-01-12 13:51:36

+0

@SvenMarnach因此,爲什麼我必須檢查它是否僅僅因爲掛載而存在內容。我不能做'[-e路徑]'測試,因爲它可能不是空的開始。腳本的下一個邏輯是,由於目錄由於掛載而被填充,因此我將相同的掛載寫入/etc/rc.local,以便用戶在每次需要填充目錄時都不必手動掛載。 – thejartender 2012-01-12 13:59:35

+0

每個目錄都存在,因爲掛載根目錄'/'也被掛載。所以它的磁盤上的每個子目錄都在那裏,因爲掛載... – TMS 2012-01-12 14:01:16

回答

3

只是檢查是否myDir是掛載點。

mountpoint -q myDir && echo "This is a mount point." 
+0

謝謝,但我已經知道了。我試圖確定目錄是否僅包含由於掛載而產生的值。目錄可能已經包含了目錄,這就是我想要建立的。 – thejartender 2012-01-12 14:03:06

+0

我不太明白你想要做什麼。在另一個文件系統掛載之後,你想檢查某個掛載點是否有文件和/或目錄? – Chewie 2012-01-12 14:18:01

+0

對不起,我重讀您的評論謝謝+接受。現在就在'if'語句中試試這個... – thejartender 2012-01-12 14:21:12

相關問題