Python - если каталог содержит файл, начинающийся с ... переместить файл - PullRequest
0 голосов
/ 11 августа 2011

Мне нужно создать скрипт на Python, который будет искать каталог (который содержит только один файл) и перемещать его, если файл не на текущий день.Для справки файл имеет суффикс, который относится к текущему дню (myfile_030811.xls)

У кого-нибудь есть идеи для этого?

Ответы [ 2 ]

2 голосов
/ 11 августа 2011

попробуйте это?Это предполагает, что каталог с именем «archived» присутствует в текущем каталоге.Вы можете настроить его под свои нужды.Также это предполагает, что все файлы в вашем каталоге имеют имя структуры _ddmmyy.формат.Иначе не будет работать

from stat import *
import os
import time
import shutil
import sys

for file in os.listdir(sys.argv[1]):
  ct = time.localtime()
  datestamp_on_filename = file.split('_')[1].split('.')[0]
  current_date_in_ddmmyy = str(ct.tm_mday) + (('0' + str(ct.tm_mon)) if ct.tm_mon < 10 else str(ct.tm_mon)) + str(ct.tm_year)[2:]
  if datestamp_on_filename != current_date_in_ddmmyy:
    print 'moving ' + file
    shutil.move(sys.argv[1] + "/" + file, 'archived')
0 голосов
/ 11 августа 2011

Как насчет bash?

Проверьте это с помощью:

for m in `find /some/base/dir -mtime 1`;do echo mv $m /new/directory;done

Если все выглядит хорошо, удалите команду "echo" перед mv.

...