Следующий код python берет список путей к конкретному экземпляру файла, чтобы скопировать их в текущий каталог с именем пути в заголовке:
python3 find.py --copy zz /Users/apt/testdir a.txt
/Users/apt/testdir/d1/a.txt
/Users/apt/testdir/d1/d3/a.txt
/Users/apt/testdir/d1/d3/d4/a.txt
/Users/apt/testdir/d1/d3/d5/a.txt
$ ls zz
Users_apt_testdir_d1_a.txt
Users_apt_testdir_d1_d3_d4_a.txt
Users_apt_testdir_d1_d3_a.txt
Users_apt_testdir_d1_d3_d5_a.txt
Все работает, но мой функция копирования:
def copy(f, new_dir):
file_name=str(f[1:])
file_name=file_name.replace('/', "_")
file_path=os.path.join(new_dir, file_name)
shutil.copy(file_path, new_dir)
os.chdir(os.path.abspath(new_dir))
os.rename(list(os.path.split(f))[1], file_name)
FileNotFoundError: [Errno 2] No such file or directory: "zz/['_u_macole_testdir_d1_d3_a.txt', '_u_macole_testdir_d1_d3_d4_a.txt', '_u_macole_testdir_d1_d3_d5_a.txt']