Bus errorとSegmentation faultに困ったら見るブログ

物理の研究者による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)

【python3】shutilのcopyがエラーを出す(shutil.SameFileError:.... are the same file)

import shutil
shutil.copy('dir1/hoge.txt', ''dir2/hoge.txt')

みたいな感じであるディレクトリの同じ名前のファイルをコピーしたい。

けどこのcopyさんはファイルの中身が同じだと、エラーを出してしまう(そんなチェックいらんやろ・・・)



ググった感じ、お手軽な解決方法はなかった。
オプションを1つ追加するとかでなんとかなるかな〜と思ったけど、tryとexceptとかなんでコピーするだけでそんなことをしないといけないのかw

■ 参考 : Disable SameFileError exception in shutil.copy



めんどくさかったので、シェルを呼び出してcpを呼び出した

import subprocess
cmd='cp dir1/hoge.txt dir2/hoge2.txt /dev/null 2>&1'
subprocess.run(cmd, shell=True)

ランキング参加中です

↓クリックしていただけると嬉しいです〜