簡體   English   中英

根據目錄名稱移動文件(Linux / Debian /#!)

[英]Move files based on directory name (Linux / Debian / #!)

題:

如何將文件從多個具有相同名稱的子目錄移動到該名稱的單個目錄中。 多個名為X的目錄中的所有文件應一起移動到一個名為X的目錄中。

示例文件結構:

(真正的結構是200-300個目錄,在我標記為1、2、3等的級別上,其下的目錄數量不同。)

(請注意,所有類似Group _的標簽都只是這些標簽。實際名稱是不規則的。)

  • 磁碟

    • 1個

      • 圖書館
        • 音樂
          • A組
            • 檔案
            • 檔案
            • 檔案
          • B組
            • 檔案
            • 檔案
            • 檔案
    • 2

      • 圖書館
        • 音樂
          • B組
            • 檔案
            • 檔案
            • 檔案
          • C組
            • 檔案
            • 檔案
            • 檔案
    • 3
      • 圖書館
        • 音樂
          • C組
            • 檔案
            • 檔案
            • 檔案
          • D組
            • 檔案
            • 檔案
            • 檔案

目標是將名稱為“ Group X”的各個子目錄中的文件移動到名稱為“ Group X”的單個目錄中,如下所示:

  • 磁碟
    • 1個
      • 圖書館
        • 音樂
          • A組
            • 檔案
            • 檔案
            • 檔案
          • B組
            • 檔案
            • 檔案
            • 檔案
            • 檔案
            • 檔案
            • 檔案
          • C組
            • 檔案
            • 檔案
            • 檔案
            • 檔案
            • 檔案
            • 檔案
          • D組
            • 檔案
            • 檔案
            • 檔案

謝謝!

您將執行以下操作:

dest="Group A"
find -type f | 
grep $dest | 
while read filename
do     
    echo mv $filename ${dest}/$(basename $filename)
done

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM