copytime.py 663 B

1234567891011121314151617181920212223242526
  1. #! /usr/bin/env python3
  2. # Copy one file's atime and mtime to another
  3. import sys
  4. import os
  5. from stat import ST_ATIME, ST_MTIME # Really constants 7 and 8
  6. def main():
  7. if len(sys.argv) != 3:
  8. sys.stderr.write('usage: copytime source destination\n')
  9. sys.exit(2)
  10. file1, file2 = sys.argv[1], sys.argv[2]
  11. try:
  12. stat1 = os.stat(file1)
  13. except OSError:
  14. sys.stderr.write(file1 + ': cannot stat\n')
  15. sys.exit(1)
  16. try:
  17. os.utime(file2, (stat1[ST_ATIME], stat1[ST_MTIME]))
  18. except OSError:
  19. sys.stderr.write(file2 + ': cannot change time\n')
  20. sys.exit(2)
  21. if __name__ == '__main__':
  22. main()