Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

Tôi muốn di chuyển tất cả các tệp văn bản từ một thư mục sang một thư mục khác bằng Python. Tôi đã tìm thấy mã này:

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)

Tôi muốn nó di chuyển tất cả các tệp trong thư mục

import shutil
import os
    
source_dir = '/path/to/source_folder'
target_dir = '/path/to/dest_folder'
    
file_names = os.listdir(source_dir)
    
for file_name in file_names:
    shutil.move(os.path.join(source_dir, file_name), target_dir)
5. Tôi không gặp lỗi, nhưng nó cũng không di chuyển các tệp.

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

Aran-Fey

37K11 Huy hiệu vàng97 Huy hiệu bạc141 Huy hiệu Đồng11 gold badges97 silver badges141 bronze badges

Hỏi ngày 24 tháng 1 năm 2017 lúc 11:18Jan 24, 2017 at 11:18

Thử cái này:

import shutil
import os
    
source_dir = '/path/to/source_folder'
target_dir = '/path/to/dest_folder'
    
file_names = os.listdir(source_dir)
    
for file_name in file_names:
    shutil.move(os.path.join(source_dir, file_name), target_dir)

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

Đã trả lời ngày 24 tháng 1 năm 2017 lúc 11:36Jan 24, 2017 at 11:36

Shivkumar Kondishivkumar KondiShivkumar kondi

6.1088 Huy hiệu vàng29 Huy hiệu bạc56 Huy hiệu Đồng8 gold badges29 silver badges56 bronze badges

5

Supered điều này không có câu trả lời bằng cách sử dụng pathilib được giới thiệu trong Python ________ 16+

Ngoài ra, SHOTIL được cập nhật trong Python

import shutil
import os
    
source_dir = '/path/to/source_folder'
target_dir = '/path/to/dest_folder'
    
file_names = os.listdir(source_dir)
    
for file_name in file_names:
    shutil.move(os.path.join(source_dir, file_name), target_dir)
7 để chấp nhận đối tượng Pathlib Chi tiết chi tiết trong PEP-0519 này

Pathlib

from pathlib import Path

src_path = '\tmp\files_to_move'

for each_file in Path(src_path).glob('*.*'): # grabs all files
    trg_path = each_file.parent.parent # gets the parent of the folder 
    each_file.rename(trg_path.joinpath(each_file.name)) # moves to parent folder.

Pathlib & Shutil để sao chép tệp.

from pathlib import Path
import shutil

src_path = '\tmp\files_to_move'
trg_path = '\tmp'

for src_file in Path(src_path).glob('*.*'):
    shutil.copy(src_file, trg_path)

Đã trả lời ngày 5 tháng 4 năm 2020 lúc 13:13Apr 5, 2020 at 13:13

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

Umar.HUmar.HUmar.H

21.7K6 Huy hiệu vàng32 Huy hiệu bạc65 Huy hiệu Đồng6 gold badges32 silver badges65 bronze badges

4

Xin vui lòng, hãy xem thực hiện chức năng copytree trong đó:

  • Liệt kê các tệp thư mục với:

    import shutil
    import os
        
    source_dir = '/path/to/source_folder'
    target_dir = '/path/to/dest_folder'
        
    file_names = os.listdir(source_dir)
        
    for file_name in file_names:
        shutil.move(os.path.join(source_dir, file_name), target_dir)
    
    8

  • Sao chép tệp với:

for name in names:
  srcname = os.path.join(src, name)
  dstname = os.path.join(dst, name)
  copy2(srcname, dstname)

Nhận DSTName là không cần thiết, bởi vì nếu tham số đích chỉ định một thư mục, tệp sẽ được sao chép vào DST bằng tên tệp cơ sở từ srcname.

Thay thế COPY2 bằng cách di chuyển.

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

Pat Myron

4.1882 Huy hiệu vàng21 Huy hiệu bạc39 Huy hiệu Đồng2 gold badges21 silver badges39 bronze badges

Đã trả lời ngày 24 tháng 1 năm 2017 lúc 11:44Jan 24, 2017 at 11:44

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

Sao chép tệp ".txt" từ thư mục này sang thư mục khác rất đơn giản và câu hỏi chứa logic. Chỉ phần còn thiếu được thay thế bằng thông tin đúng như dưới đây:

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";

Dưới đây các dòng mã sẽ sao chép tệp với các tệp tiện ích *.txt từ src_fldr sang dst_fldr

for txt_file in glob.glob(src_fldr+"\\*.txt"):
    shutil.copy2(txt_file, dst_fldr);

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

Đã trả lời ngày 24 tháng 1 năm 2017 lúc 12:00Jan 24, 2017 at 12:00

TousiftousifToUsIf

Phù hiệu bằng đồng 16122 bronze badges

Cái này cần phải dùng mẹo. Đồng thời đọc tài liệu của mô -đun SHOTIL để chọn hàm phù hợp với nhu cầu của bạn (Sould.Copy (), Sould.Copy2 (), Sould.CopyFile () hoặc SHOWIL.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)

Đã trả lời ngày 24 tháng 1 năm 2017 lúc 11:29Jan 24, 2017 at 11:29

TehctehcTehc

6693 Huy hiệu vàng9 Huy hiệu bạc28 Huy hiệu đồng3 gold badges9 silver badges28 bronze badges

1

import shutil 
import os 
import logging

source = '/var/spools/asterisk/monitor' 
dest1 = '/tmp/'


files = os.listdir(source)

for f in files:
        shutil.move(source+f, dest1)

logging.basicConfig(filename='app.log', filemode='w', format='%(name)s
- %(levelname)s - %(message)s')

logging.info('directories moved')

Một chút mã nấu chín với tính năng nhật ký. Bạn cũng có thể định cấu hình điều này để chạy vào một khoảng thời gian bằng cách sử dụng crontab.

* */1 * * * python /home/yourprogram.py > /dev/null 2>&1

Chạy mỗi giờ! Chúc mừng

Đã trả lời ngày 17 tháng 1 năm 2020 lúc 12:25Jan 17, 2020 at 12:25

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

Daniel Adenewdaniel AdenewDaniel Adenew

7.3737 Huy hiệu vàng54 Huy hiệu bạc75 Huy hiệu đồng7 gold badges54 silver badges75 bronze badges

Thử cái này:

import shutil
import os
    
source_dir = '/path/to/source_folder'
target_dir = '/path/to/dest_folder'
    
file_names = os.listdir(source_dir)
    
for file_name in file_names:
    shutil.move(os.path.join(source_dir, file_name), target_dir)
0

Đã trả lời ngày 24 tháng 1 năm 2017 lúc 11:36Mar 5, 2021 at 8:33

Shivkumar Kondishivkumar Kondi

import shutil
import os
    
source_dir = '/path/to/source_folder'
target_dir = '/path/to/dest_folder'
    
file_names = os.listdir(source_dir)
    
for file_name in file_names:
    shutil.move(os.path.join(source_dir, file_name), target_dir)
1

6.1088 Huy hiệu vàng29 Huy hiệu bạc56 Huy hiệu ĐồngNov 24, 2020 at 1:59

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

Supered điều này không có câu trả lời bằng cách sử dụng pathilib được giới thiệu trong Python ________ 16+

import shutil
import os
    
source_dir = '/path/to/source_folder'
target_dir = '/path/to/dest_folder'
    
file_names = os.listdir(source_dir)
    
for file_name in file_names:
    shutil.move(os.path.join(source_dir, file_name), target_dir)
2

Ngoài ra, SHOTIL được cập nhật trong Python

import shutil
import os
    
source_dir = '/path/to/source_folder'
target_dir = '/path/to/dest_folder'
    
file_names = os.listdir(source_dir)
    
for file_name in file_names:
    shutil.move(os.path.join(source_dir, file_name), target_dir)
7 để chấp nhận đối tượng Pathlib Chi tiết chi tiết trong PEP-0519 nàyJul 4, 2020 at 19:45

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

import shutil
import os
    
source_dir = '/path/to/source_folder'
target_dir = '/path/to/dest_folder'
    
file_names = os.listdir(source_dir)
    
for file_name in file_names:
    shutil.move(os.path.join(source_dir, file_name), target_dir)
3

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

Pathlib

Pathlib & Shutil để sao chép tệp.89 gold badges265 silver badges246 bronze badges

Đã trả lời ngày 5 tháng 4 năm 2020 lúc 13:13Jul 14, 2020 at 18:31

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?

1

21.7K6 Huy hiệu vàng32 Huy hiệu bạc65 Huy hiệu Đồng

import shutil
import os
    
source_dir = '/path/to/source_folder'
target_dir = '/path/to/dest_folder'
    
file_names = os.listdir(source_dir)
    
for file_name in file_names:
    shutil.move(os.path.join(source_dir, file_name), target_dir)
4

Xin vui lòng, hãy xem thực hiện chức năng copytree trong đó:

Liệt kê các tệp thư mục với:1 gold badge10 silver badges24 bronze badges

Sao chép tệp với:Jun 1 at 8:40

Hướng dẫn how do i get python to put all files in a directory? - làm cách nào để python đặt tất cả các tệp vào một thư mục?