2016-07-18 146 views
0

假設用戶在其家中有50個目錄。我們只想刪除特定的目錄。如果我們創建一個具有特定目錄的文件進行刪除,可以使用腳本根據文件的內容進行刪除?我們不想一個接一個地刪除這些,我們不能按日期或其他模式來刪除它們。根據文本文件刪除目錄

+0

你做了什麼嘗試? – Inian

+1

我們這裏的大多數人很樂意幫助你改進自己的工藝,但不如快速充當短期無償編程人員。在[MCVE](http://stackoverflow.com/help/mcve)中向我們展示您的工作,您期待的結果以及您獲得的結果,我們將幫助您弄清楚。 – ghoti

+0

我明白了,我是這個新手,並沒有廣泛的尋找任何東西,只是在詢問它是否可能並且有可能的命令。我希望這是一個簡單的情況,許多熟悉腳本的人都會知道他們的頭頂,而沒有任何其他人的真正努力。 – Matt

回答

0

假設你在UNIX上,和你的文本文件被稱爲「顯示目錄」,每行1根目錄中的所有您需要做的是:

cat dirs | xargs rm -rf {\;} 
+0

這不是你如何使用xargs ... – 123

3

是的,它是可能的,當然。下面是用於讀取文件的示例:

#!/bin/bash 
while IFS='' read -r line || [[ -n "$line" ]]; do 
    echo "Text read from file: $line" 
done < "$1" 

IFS=''防止領導或者被修剪

-r防止反斜槓被解釋尾部空格

|| [[ -n $line ]]防止被忽略了你的最後一行,如果它不是結束於\n

至於刪除,你可以用你喜歡的任何東西來代替echo。

+0

這工作就像一個魅力,謝謝。解釋也很有幫助。而不是我使用的回聲:rm -R $行 – Matt

0
xargs -r rm -rf <dirs.txt 

其中dirs.txt包含您的目錄的名稱。

相關問題