import os
import sys
import shutil
import argparse
from glob import glob as glob
def parse_opt(known=False):
parser = argparse.ArgumentParser()
parser.add_argument(
'--src_dir', type=str, default='./', help='farther folder of folders.')
parser.add_argument(
'--dst_path', type=str, default='./view_split', help='father folder of dst files in different folders.')
opt = parser.parse_known_args()[0] if known else parser.parse_args()
return opt
def copy_first_10_files(source_dir, dest_dir):
for root, dirs, files in os.walk(source_dir):
for dir in dirs:
source_subdir = os.path.join(root, dir)
dest_subdir = source_subdir.replace(source_dir, dest_dir+"/", 1)
os.makedirs(dest_subdir, exist_ok=True)
if not os.path.exists(dest_subdir):
os.makedirs(dest_subdir)
file_list = os.listdir(source_subdir)
file_list.sort() # Sort files for consistent order
for i, file in enumerate(file_list):
if i < 1:
source_file = os.path.join(source_subdir, file)
dest_file = os.path.join(dest_subdir, file)
shutil.copy2(source_file, dest_file)
print("Copied: {} to {}".format(source_file, dest_file))
def main(opt):
cur_dir = os.path.dirname(__file__)
source_directory = opt.src_dir
destination_directory = opt.dst_path
copy_first_10_files(source_directory, destination_directory)
if __name__ == "__main__":
opt = parse_opt()
main(opt)