Mkdir

在另一個文件夾中創建相同的子文件夾

  • September 26, 2019

我有一個foo帶有子目錄的目錄。我希望在另一個目錄中創建相同的子目錄名稱而不複製它們的內容。我該怎麼做呢?

有沒有辦法將ls輸出作為大括號擴展列表?

試試這個,

cd /source/dir/path
find . -type d -exec mkdir -p -- /destination/directory/{} \;
  • . -type d以遞歸方式列出目前路徑中的目錄。
  • mkdir -p -- /destination/directory/{}在目的地創建目錄。

這依賴於find支持{}在參數詞中間擴展的 a。

使用rsync

rsync -a --include='*/' --exclude='*' /some/path/dir/ dir

這將在目前目錄中重新創建/some/path/diras的目錄結構dir,而無需複制任何文件。

由於包含模式,源路徑中遇到的任何目錄都將在目標中創建,但其他任何目錄都將被排除。-a作為使用( )的副作用--archive,您將在目標中的所有子目錄上獲得與源中相同的時間戳。這也適用於從遠端目錄創建本地目錄結構(反之亦然)。

引用自:https://unix.stackexchange.com/questions/543195