Поменять время создания файла linux

Как я могу изменить дату изменения / создания файла?

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

Посмотрите на Conky — легкий системный монитор для Ubuntu Linux Systems, у него есть несколько скриншотов и указаний по его установке на Ubuntu (через репозитории). Конфигурация проста, но создается через текстовые файлы, поэтому вы должны быть готовы запустить свой любимый редактор.

7 ответов

Пока вы являетесь владельцем файла (или root), вы можете изменить время модификации файла с помощью команды touch :

По умолчанию это установит файл время модификации к текущему времени, но есть несколько флагов, таких как флаг -d для выбора конкретной даты. Так, например, чтобы установить файл как изменяемый за два часа до настоящего, вы можете использовать следующее:

Если вы хотите изменить файл относительно его существующего времени изменения, следующее должно сделайте трюк:

Если вы хотите изменить большое количество файлов, вы можете использовать следующее:

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

Эта форма невозможна с относительным временем файла версия, потому что она использует оболочку для формирования аргументов touch .

Что касается времени создания, большинство файловых систем Linux не отслеживают это значение. С файлами связан ctime , но он отслеживает время последнего изменения метаданных файла. Если права доступа к файлу никогда не меняются, может случиться так, что он задержит время создания, но это совпадение. Явное изменение времени модификации файла считается изменением метаданных, поэтому также будет иметь побочный эффект обновления ctime .

Источник

Как я могу изменить время создания всех файлов папки на текущее время?

В оболочке Linux, как я могу изменить время создания всех файлов папки на текущее время?

Читайте также:  Файл hosts windows 10 нет доступа

3 ответа 3

Перейдите к рассматриваемой папке, скажем,

Это изменит время модификации, когда вы выполняете эту команду.

Очевидно, вы можете сделать это более конкретным в зависимости от вашего варианта использования, например,

только изменит время модификации для файлов со строкой ‘.doc’ в их имени.

В Linux, если вы хотите сделать что-то рекурсивное в каталоге, или вы хотите применить некоторые действия к файлам, отвечающим некоторым критериям, вам следует попробовать find и xargs

Нажмите на все файлы в

/Documents/myfiles (включая файлы в подкаталоге)

ОП запросил время создания, но ответы Яна Янга и Боэджа основаны на touch команды, устанавливающей время модификации, доступа и изменения текущего времени.

Как boehj сказал (в комментарии) нет времени создания файла . Это верно для большинства файловых систем, но в некоторых современных файловых системах (например, ext4) время создания (или рождения) файла хранится в inode.

Поэтому мы можем дать более правильный ответ, скрупулезно соблюдая заголовок вопроса:

Это изменит время создания (время рождения ) на текущее время. Это также обновляет время изменения, но сохраняет неизменным время изменения и доступа .

Для информации время изменения иногда сокращается как ctime и может быть перепутано со временем создания ( crtime или btime ). Фактически время изменения файла — это время изменения его соответствующего inode. Поэтому команды, изменяющие содержимое inode как chmod или chattr также устанавливают время изменения на текущее время.

Источник

Как я могу изменить дату изменения / создания файла?

Есть ли способ изменить дату, когда файл был изменен / создан (который отображается в Nautilus или с помощью команды ls -l)? В идеале я ищу команду, которая может изменить метки даты / времени целой пачки файлов на определенное количество времени раньше или позже (например, +8 часов или -4 дня и т. Д.).

Пока вы являетесь владельцем файла (или root), вы можете изменить время модификации файла, используя touch команду:

По умолчанию это установит время модификации файла на текущее время, но есть несколько флагов, например, -d флаг для выбора конкретной даты. Так, например, чтобы установить файл как изменяемый за два часа до настоящего, вы можете использовать следующее:

Если вместо этого вы хотите изменить файл относительно его существующего времени модификации, то следует сделать следующее:

Если вы хотите изменить большое количество файлов, вы можете использовать следующее:

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

Читайте также:  Hex editor linux ubuntu

Эта форма невозможна для относительной версии времени файла, потому что она использует оболочку для формирования аргументов touch .

Что касается времени создания, большинство файловых систем Linux не отслеживают это значение. Существует ctime связь с файлами, но она отслеживает время последнего изменения метаданных файла. Если права доступа к файлу никогда не меняются, может случиться так, что он задержит время создания, но это совпадение. Явное изменение времени изменения файла считается изменением метаданных, поэтому также имеет побочный эффект обновления ctime .

Источник

Изменение даты создания и даты модификации файла

Как изменить дату модификации и создания файла в Linux ?

2 ответа 2

В терминале вводим :

Где :

1998 — год
07 — месяц
08 — день
12 — час
15 — минута
.25 — секунда

А можно использовать ключ -d , который принимает строковое значение :

Ключи :
-m Дата модификации
-a Дата открытия файла
-t Отметка времени

Изменяем системное время.

sudo date —set 10/04/2019

Создаем и модифицируем файл.

Синхронизируем часы, в Arch Linux.

sudo timedatectl set-ntp true

Всё ещё ищете ответ? Посмотрите другие вопросы с метками linux touch или задайте свой вопрос.

Похожие

Подписаться на ленту

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

дизайн сайта / логотип © 2021 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2021.10.8.40416

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Источник

Команда Date в Linux с примерами

Linux Date Command with Examples

В этом руководстве мы рассмотрим основы date команды.

Команда date отображает или устанавливает системную дату. Чаще всего он используется для печати даты и времени в разных форматах и ​​для расчета будущих и прошлых дат.

Использование Date

Синтаксис date команды следующий:

Выходные данные включают день недели, месяц, день месяца, время, часовой пояс и год:

Параметры форматирования даты

Вывод date команды может быть отформатирован с помощью последовательности символов управления форматом, перед которой стоит + знак. Элементы управления форматом начинаются с % символа и заменяются их значениями.

Символ %Y будет заменен на год, %m месяц и %d день месяца:

Вот еще один пример:

Ниже приведен небольшой список некоторых наиболее распространенных символов форматирования:

  • %a — Сокращенное название дня недели (например, понедельник)
  • %A — Сокращенное полное название дня недели (например, понедельник)
  • %b — Сокращенное название месяца (например, январь).
  • %B — сокращенное длинное название месяца (например, январь)
  • %d — день месяца (например, 01)
  • %H — час (00..23)
  • %I — час (01.12.12)
  • %j — День года (001..366)
  • %m — Месяц (01.12.12)
  • %M — Минута (00..59)
  • %S — Второй (00 .. 60)
  • %u — день недели (1..7)
  • %Y — Полный год (например, 2019)
Читайте также:  Linux скрипт копирования ftp

Чтобы получить полный список всех параметров форматирования, запустите date —help или man date в своем терминале.

Пользовательское форматирование даты

-d Опция позволяет работать на дату конкретного. Вы можете указать дату в виде удобочитаемой строки даты, как показано ниже:

Использование пользовательского форматирования:

Строка даты принимает значения, такие как «завтра», «пятница», «последняя пятница», «следующая пятница», «следующий месяц», «следующая неделя» .. и т. Д.

Вы также можете использовать параметр строки даты, чтобы показать местное время для разных часовых поясов. Например, чтобы показать местное время 6:30 утра следующего понедельника на восточном побережье Австралии, введите:

Переопределить часовой пояс

Команда date возвращает дату в системном часовом поясе по умолчанию . Чтобы использовать другой часовой пояс, установите переменную среды TZ в желаемый часовой пояс.

Например, чтобы показать время в Мельбурне, введите:

Чтобы получить список всех доступных часовых поясов , вы можете либо перечислить файлы в /usr/share/zoneinfo каталоге, либо использовать timedatectl list-timezones команду.

Конвертер эпох

date Команда может быть использована в качестве преобразователя Epoch. Время, или метки времени Unix, — это количество секунд, прошедших с 1 января 1970 года в 00:00:00 UTC.

Чтобы напечатать количество секунд от эпохи до текущего дня, вызовите date с %s контролем формата:

Чтобы преобразовать секунды с начала эпохи в дату, установите секунды в виде строки даты с префиксом @ :

Использование date с другими командами

Команда date чаще всего используется для создания имен файлов, которые содержат текущее время и дату.

Команда ниже создаст файл резервной копии Mysql в следующем формате database_name-20190601.sql

Вы также можете использовать date команду в своих сценариях оболочки. В приведенном ниже примере мы присваиваем выход date к date_now переменной:

Показать время последнего изменения файла

Команда date с -r параметром показывает время последнего изменения файла. Например:

Если вы хотите изменить временную метку файла, используйте touch команду .

Установите системное время и дату

Установка системного времени и даты вручную с помощью этой date команды не рекомендуется, поскольку в большинстве дистрибутивов Linux системные часы синхронизируются с ntp помощью systemd-timesyncd служб или .

Однако, если вы хотите установить системные часы вручную, вы можете использовать эту —set= опцию. Например, если вы хотите установить дату и время 17:30, 01 июня 2019 г., введите:

Вывод

Команда Linux date отображает или устанавливает системную дату и время.

Источник

Оцените статью