Найти - Пользователи
Полная версия: как в Python вытащить ряд информацию о файле?
Начало » Python для новичков » как в Python вытащить ряд информацию о файле?
1
Семён
как в Python вытащить информацию когда был
1)создан файл file4(дата и время)
2)последний раз изменён(дата и время)
3)кем создан(дромент(рабочая группа)/имя пользователя)
4)размер в Мб файл
?
а потом ещё сравнить дату создания с датой,укащанная в виде аргумента при запуске скрипта в формате ЧЧ.ММ.ГГГГ,если они совпадают,то print “Датфы совпадают”

Понимаю вопросы возможно не совсем хорошие,но только начинаю юзать питон…пока вроде с Вашей помощью начинаю понимать+мануалы разные почитываю.
Заранее благодарен.
FishHook
Семён
как в Python вытащить информацию когда был
1)создан файл file4(дата и время)
2)последний раз изменён(дата и время)
3)кем создан(дромент(рабочая группа)/имя пользователя)
4)размер в Мб файл
?
а потом ещё сравнить дату создания с датой,укащанная в виде аргумента при запуске скрипта в формате ЧЧ.ММ.ГГГГ,если они совпадают,то print “Датфы совпадают”

Понимаю вопросы возможно не совсем хорошие,но только начинаю юзать питон…пока вроде с Вашей помощью начинаю понимать+мануалы разные почитываю.
Заранее благодарен.
import os
print os.stat('/home/FishHook/ed.py')

>>> posix.stat_result(st_mode=33188, st_ino=450559, st_dev=2054L, st_nlink=1, st_uid=1000, st_gid=1000, st_size=11607, st_atime=1331432790, st_mtime=1330401605, st_ctime=1330401605)

print os.stat('/home/FishHook/ed.py').st_atime

>>>1331432790.1541588
Семён
Верно я тогда написал?
——————————–
import os

#st_ctime-время создания файла
vrsozd=os.stat('/file1.txt').st_ctime
#st_mtime-время последнего изменения файла
vrizm=os.stat('/file1.txt').st_mtime
#сравниваем был ли изменён файл после создания(погрешность 5 секунд)
if (vrizm-vrsozd)>5:
print ‘Файл был изменён’
else:
print ‘Файл не изменён’

#сравниваем время создания последнего изменения файла и датой,которая указывается при запуске скрипта в виде аргумента sys.argv
#при этом вопрос возникает как перевести дату sys.argv в формат unix-time(кстати и как наоборот)…аналог как mktime(перевод даты в #unix-time формат) и strftime(обратный mktime)
#запуск с консоли прописывается сл образом #python myscript.py 01.03.2012 11.03.2012

if sys.argv==vrizm:
print ‘Файл создан на введённую первую дату’

#Сравнение времени модификации в промежуток времени


if (sys.argv-vrizm)<=(sys.argv-sys.argv):
print ‘Файл создан в ведённый приод времени’

——————
Как вы понимаете сравнение у меня не происходит((как тогда сравнить?
pyuser
import sys
import time as _time
from datetime import datetime

ticks = lambda x: int(_time.mktime(x.timetuple()))

start = ticks(datetime.strptime(sys.argv[1], "%d.%m.%Y"))
stop = ticks(datetime.strptime(sys.argv[2], "%d.%m.%Y"))

# теперь можно сравнивать
Семён
Спасибо!
У меня кстати сразу возник вопрос,может слегка не по теме,но схоже…
вот к примеру по времени вроде всё понятно стало, а вот как быть с именем пользователя,который создал файл…
если файл монтируется с шары виндовой машины?
Т.е. мы же,находясь в линуксовой машине не сможем никак увидеть логин-виндовый, так как как я понимаю когда мы монтируем файл,который хранится в виндовой машине, мы указываем логин и пароль-кем монтируется…как правило это заранее знающей учёткой из домена (Activ Directory)-например гость и пароль на него.
поэтому мы не сможем же кроме гостя и локальных учёток видеть на линуксовой машине информацию о файле,хотя файл мог быть создан другим пользователем из Activ Directory, а не Гостем.

Верно?или всё же я ошибаюсь?
Т.е. имея параметр st_uid=1000 из файла, мы максимум можем вытащить читаемый логин из локальных учёток линуксово
Семён
й машины-например с файлв /etc/paswd….а если файл создан например пользователем Domen1.ty/polz,который прописан в Activ Directory, то мы же его не уивидим-как создатель файла?или увидим и как это можно тогда сделать?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB