Yes, shutil.copy doesn't tell you its progress. You can check the size of the file using os.stat
file_zise = os.stat('original_big_file.big').st_size # you doing this periodicaly every second while in another thread or process the copying is on the go new_size = os.stat('new_big_file.big').st_size print(new_size / file_size * 100) # print the percentage of copying file to original