0

bashで、ディレクトリはあるがディレクトリfooがないbar場合、コマンド

cp -r foo バー

はディレクトリを作成しbar、このディレクトリには の内容が含まれますfoo。これに相当する Python はshutil.copytree("foo", "bar").

ただし、ディレクトリfooとディレクトリもあるbar場合、コマンドは

cp -r foo バー

fooその下barにすべてのコンテンツを含む新しいディレクトリが作成fooされます。

これに相当するPythonはありますか?

os.system a)またはを使用して実際のコマンドを呼び出す

b) ディレクトリのベース名を手動で抽出し、fooそれを bar を使用して追加しos.path.join、実行するcopytree

つまり、Python にはディレクトリにコピーするという概念がありますか?

更新:「重複する」質問には両方とも、ディレクトリに「コピー」するのではなく、ディレクトリを「コピー」するソリューションがあります。このようなソリューションを使用するには、ディレクトリのベース名を手動で抽出し、fooそれを追加してからbar使用する必要がありますdistutils.dir_util.copy_tree。これを必要としないソリューションを明示的に探しています。

bar既に存在する場合は、 のすべての内容でcp -r foo bar新しいfoo内部を作成します。一方、新しい を作成せずにすべてを内部に入れます。barfoodistutils.dir_util.copy_treefoobarfoo

4

0 に答える 0