| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #!/usr/bin/env python
- #ident "@(#)$Format:LocalFoodAI_lanfr144:archive_scratch.py:%an:%ae:%ad:%cn:%ce:%cd:%H:%D:%N$"
- import os
- import shutil
- def archive_scratch():
- # Define directories
- base_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
- scratch_dir = os.path.join(base_dir, "scratch")
- user_profile = os.environ.get("USERPROFILE") or os.path.expanduser("~")
- keep_dir = os.path.join(user_profile, "keep")
- # Create destination folder if not exists
- if not os.path.exists(keep_dir):
- os.makedirs(keep_dir)
- print(f"Created archive directory: {keep_dir}")
- # Check scratch directory contents
- if not os.path.exists(scratch_dir):
- print(f"Scratch directory does not exist: {scratch_dir}")
- return
- # Move files
- files_moved = 0
- for filename in os.listdir(scratch_dir):
- src_path = os.path.join(scratch_dir, filename)
-
- # Skip directories if any
- if not os.path.isfile(src_path):
- continue
- # Find unique versioned filename
- version = 1
- while True:
- # First file is named test_filter.py;001, then test_filter.py;002...
- dest_filename = f"{filename};{version:03d}"
- dest_path = os.path.join(keep_dir, dest_filename)
- if not os.path.exists(dest_path):
- break
- version += 1
- shutil.move(src_path, dest_path)
- print(f"Moved: {filename} -> {dest_path}")
- files_moved += 1
- print(f"Scratch archiving completed. Total files archived: {files_moved}")
- if __name__ == "__main__":
- archive_scratch()
|