Как переименовать имя файла с отметкой времени созданной даты с помощью JavaScript, Perl или оболочки в OSX?

Не могли бы вы рассказать мне, как получить метку времени создания файла и переименовать имя файла с помощью JavaScript, Perl или оболочки в OSX 10.9.2?

Пример:

Существующее: отметка времени Untitled.txt: 2014/05/03 01:01:01

Новое: %prefix%_Untitled_20140503_0101.txt (секунды не нужны)

Причина:

У меня странные вещи, что временная метка часто меняется благодаря микроволновой /V2K-технологии. Но я должен знать, когда он будет создан. потому что это доказательство этого вопроса. Пожалуйста, помогите.

1 ответ

Решение

Получить время создания файла использования stat команда. Вывод будет в секундах (начиная с эпохи Unix).

  • -n опция подавляет перевод строки в конце вывода.
  • -f разрешает использование форматирования "printf" %B дата создания или "рождения" файла.

    D=$(stat -nf'%B' your_file)
    

Тогда используйте дату -r возможность ввода даты в секундах. +%Y... Аргумент указывает формат даты.

   DF=$(date -r $D '+%Y%m%d_%H%M')

Скрипты bash будут примерно такими:

 export PREFIX="your_prefix"
 D=$(stat -nf'%B' your_file)            # seconds since creation time of file
 DF=$(date -r $D '+%Y%m%d_%H%M')             # formatted creation date/time
 mv your_file "${PREFIX}_your_file_${DF}.txt"  # rename the file
Другие вопросы по тегам