renombrar - python directorio actual
Mover todos los archivos de un directorio a otro usando Python (4)
Copiar el archivo ".txt" de una carpeta a otra es muy simple y la pregunta contiene la lógica. Solamente la parte faltante está sustituyendo con la información correcta de la siguiente manera:
import os, shutil, glob
src_fldr = r"Source Folder/Directory path"; ## Edit this
dst_fldr = "Destiantion Folder/Directory path"; ## Edit this
try:
os.makedirs(dst_fldr); ## it creates the destination folder
except:
print "Folder already exist or some error";
las siguientes líneas de código copiarán el archivo con los archivos de extensión * .txt de src_fldr a dst_fldr
for txt_file in glob.glob(src_fldr+"//*.txt"):
shutil.copy2(txt_file, dst_fldr);
Quiero mover todos los archivos de texto de una carpeta a otra usando Python. Encontré este código:
import os, shutil, glob
dst = ''/path/to/dir/Caches/com.apple.Safari/WebKitCache/Version/ 4/Blobs ''
try:
os.makedirs(/path/to/dir/Tumblr/Uploads) # create destination directory, if needed (similar to mkdir -p)
except OSError:
# The directory already existed, nothing to do
pass
for txt_file in glob.iglob(''*.txt''):
shutil.copy2(txt_file, dst)
Me gustaría que mueva todos los archivos en la carpeta Blob
. No estoy recibiendo un error, pero tampoco está moviendo los archivos.
Esto debería funcionar. Lea también la documentation del módulo de shutil para elegir la función que se ajuste a sus necesidades (shutil.copy (), shutil.copy2 (), shutil.copyfile () o shutil.move ()).
import glob, os, shutil
source_dir = ''/path/to/dir/with/files'' #Path where your files are at the moment
dst = ''/path/to/dir/for/new/files'' #Path you want to move your files to
files = glob.iglob(os.path.join(source_dir, "*.txt"))
for file in files:
if os.path.isfile(file):
shutil.copy2(file, dst)
Por favor, eche un vistazo a la implementación de la función copytree que:
Listar archivos de directorio con:
names = os.listdir(src)
Copia archivos con:
for name in names: srcname = os.path.join(src, name) dstname = os.path.join(dst, name) copy2(srcname, dstname)
No es necesario obtener dstname , porque si el parámetro de destino especifica un directorio, el archivo se copiará en dst utilizando el nombre de archivo base de srcname .
Reemplace copy2 por mover .
Prueba esto..
import shutil
import os
source = ''/path/to/source_folder''
dest1 = ''/path/to/dest_folder''
files = os.listdir(source)
for f in files:
shutil.move(source+f, dest1)