GNU coreutils (組み込みでない Linux や Cygwin など) を使用すると、次のように簡単です
cp -a --attributes-only Dir1 Dir2
または、より複雑ですが、単一のファイルシステムパスを使用します (さらに移植性を高めるために ~
$HOME
と書く必要があります )
find . \( -type d -exec mkdir -p "~/elsewhere/{}" \; \
-o -type f -exec touch "~/elsewhere/{}" \; \)
ここでの複雑さは、ブール論理 (学習するのに役立つかもしれません) と優先順位 (これも知っておくとよいでしょう) と find
の方法です。 -type
間の暗黙の AND を使用してこれらの概念を実装します。 およびその後のアクション、および OR -o
として出現 .