Как узнать дату / время, когда файл был помещен в каталог в Windows? - PullRequest
3 голосов
/ 09 января 2009

Есть ли способ узнать, когда файл был перемещен в определенный каталог?

Меня спрашивают, почему мой скрипт не нашел файл в определенной директории. Файл был создан в январе прошлого года, но я подозреваю, что он был помещен в каталог после запуска сценария. Есть ли способ подтвердить мои подозрения?

Просмотр свойств файла дает мне время создания, изменения и обращения, а первые два не меняются при перемещении файлов из одного каталога в другой.


РЕДАКТИРОВАТЬ: у меня установлен Cygwin, если это поможет. Есть ли Unix способ определить, когда была создана запись в каталоге?

Ответы [ 3 ]

3 голосов
/ 09 января 2009

Если можно считать, что рассматриваемый файл был последним файлом, добавленным в этот каталог, вы можете посмотреть дату последнего изменения самого каталога, поскольку каталоги изменяются при вставке в них файлов. В противном случае, я не очень надеюсь.

0 голосов
/ 02 января 2014

Использование wmic и / или создание слоя для себя действительно помогает при использовании cyging. Например, функция, подобная этой, вернет все в диалоге свойств окна для файла ...

finfo() { [[ -f "$(cygpath "$@")" ]] || { echo "bad-file";return 1;}; echo "$(wmic datafile where name=\""$(echo "$(cygpath -wa "$@")"|sed 's/\\/\\\\/g')"\" get /value)"|sed 's/\r//g;s/^M$//;/^$/d'|awk -F"=" '{print $1"=""\033[1m"$2"\033[0m"}';}

Таким образом, независимо от того, как файл был затронут, у вас есть несколько способов узнать.

CMD Line FU Информационная ссылка

0 голосов
/ 09 января 2009

Если вы работаете в Windows XP или 2000 или выше, вы можете использовать dir / tc для получения времени создания файла (которое будет, когда он был скопирован в каталог). Под Cygwin вы можете использовать ls -lc.

...