[英]How can I run linux cp -r with variables command from python code
我想從python代碼運行cp -r $ src $ dest。 當我嘗試將src和dest作為變量而不是字符串傳遞時,就會出現問題。
將目錄和帶有文件的所有子文件夾復制到新目錄的最簡單方法是什么?
我試過了:
src='src/dir'
dest='dest/dir/
import os
myCmd = 'cp -R '+src+' '+dest
os.system(myCmd)
我也嘗試使用子流程:
subprocess.run(myCmd, shell=True)
要么:
subprocess.run('cp -r "$s" "$d"', shell=True, env={'s': src, 'd':dest} )
僅當我將src和dest指定為字符串時,它才起作用:
subprocess.run('cp -r src/dir dest/dir', shell=True )
而不是進行系統級調用,請使用shutil.copytree()
:
import shutil
source_folder = '/somewhere/some_folder'
dest_folder = '/elsewhere/some_folder'
shutil.copytree(source_folder, dest_folder)
這將適用於所有平台
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.