- Создание файлов в Linux. Команда touch
- Синтаксис touch
- Создание пустого файла
- Создание нескольких файлов
- Изменение времени доступа и модификации
- Запрет создания нового файла
- Установка заданного времени доступа и модификации
- Использование временных меток другого файла
- Создание файла с заданным временем
- Заключение
- Команда touch в Linux
- Метки времени файлов Linux
- Как использовать сенсорную команду
- Изменение только времени доступа или модификации
- Меняем только время доступа
- Измените только время изменения
- Установка конкретных отметок времени
- Использование метки времени другого файла
- Изменение метки времени символической ссылки
- Выводы
- Использование команды touch в Linux
- Используем команду touch в Linux
- Синтаксис
- Генерация пустых файлов
- Установка времени последнего доступа
- Установка времени последнего изменения
- Запрет на создание объекта
- Установка времени доступа и изменений
- Перенос временных меток выбранного файла
- Создание файла с указанным временем
Создание файлов в Linux. Команда touch
В Linux у каждого файла есть временные метки. В них хранится информация о времени последнего доступа, времени последней модификации (изменения содержимого) и времени последнего изменения (изменения метаданных). Поэтому при создании нового файла, доступе к файлу или его модификации временные метки этого файла автоматически обновляются.
В данном руководстве мы рассмотрим несколько полезных практических примеров использования команды touch. Это стандартная программа операционных систем Unix/Linux, используемая для создания и изменения временных меток файлов.
Синтаксис touch
Опции команды следующие:
-a изменить только время доступа
-m изменить только время модификации
-c не создавать файл, если он не существует
-r использовать время доступа и модификации заданного файла
-t использовать заданные дату и время вместо текущего
-d использовать дату и время, заданные в виде строки
—help вывести справочное сообщение и выйти
—version вывести информацию о версии и выйти
Создание пустого файла
Следующая команда создает новый пустой (размером 0 байт) файл с именем file1:
Создание нескольких файлов
При помощи команды touch можно создавать больше одного файла. Например, следующая команда создаст три файла – file1, file2 и file 3:
Также можно указывать диапазон, например:
Изменение времени доступа и модификации
Для изменения или обновления времени последнего доступа и модификации файла используются опции «-a» и «-m». Первая из них изменяет время доступа, и если в явном виде не указана вторая, время модификации остается неизменным. Следующая команда устанавливает текущее время доступа к файлу file1. Если файл не существует, будет создан новый пустой файл с таким именем:
Если нужно изменить время модификации файла file2, выполните следующую команду. Аналогично, время доступа остается неизменным, если не указать опцию -a:
Временные метки используются для сортировки и поиска файлов такими популярными командами Linux, как find и ls.
Запрет создания нового файла
Опция «-c» запрещает команде touch создавать новый файл. Например, следующая команда не будет создавать файл file4, если его не существует:
Установка заданного времени доступа и модификации
При помощи опций «-c» и «-t» можно задать время в явном виде. Формат команды следующий:
ВВ – первые две цифры года
ГГ – последние две цифры года.
Значения «ВВ» и» ГГ» можно не указывать: если «ГГ» в диапазоне 69-99, то «ВВ» автоматически устанавливается в 19, для «ГГ» 00-38 значение «ВВ» устанавливается в 20. Если не указать год вообще, то устанавливается текущий год. «ГГ» от 39 до 68 приводит к ошибке.
ММ – месяц (01-12)
ДД – день (01-31)
чч – час (00-23)
мм – минута (00-59)
сс – секунда (00-59), не обязательно
Например, следующая команда устанавливает дату и время доступа и модификации файла file1 в 10:26 16 января текущего года (2019):
Результат можно проверить командой ls -l:
Вместо опции «–t» можно использовать опцию «–d», которая позволяет задать дату и время в виде строки в более удобном и читаемом человеком формате, например:
Так как время и год не указаны, данная команда устанавливает дату 14 марта текущего года, а время – 00:00.
Использование временных меток другого файла
Команда touch с опцией «-r» позволяет задать файлу временные метки другого файла. Например, следующая команда установит для файла file2 временные метки file1. Таким образом, временные метки обоих файлов будут одинаковыми:
Создание файла с заданным временем
Опцию «-t» можно использовать для создания пустого файла с заданной временной меткой. Обратите внимание на отсутствие опции «-с»:
Приведенная команда создает файл с именем file5 и временной меткой 18:30:55 10 декабря 2018 года.
Заключение
Команда touch очень простая, и мы рассмотрели практически все ее опции. Однако, в разных версиях операционных систем ее работа может немного отличаться. Уточнить детали всегда можно на соответствующей man-странице.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
Команда touch в Linux
Команда touch позволяет обновлять временные метки в существующих файлах и каталогах, а также создавать новые пустые файлы.
В этом руководстве мы покажем вам, как использовать сенсорную команду, на практических примерах и подробных объяснениях наиболее распространенных параметров команд.
Метки времени файлов Linux
Прежде чем перейти к использованию сенсорной команды, давайте начнем с обзора временных меток файлов в Linux.
Файл в Linux имеет три отметки времени:
- atime (время доступа) — время последнего доступа / открытия файла какой-либо командой или приложением, например cat , vim или grep .
- mtime (время изменения) — время последнего изменения содержимого файла.
- ctime (время изменения) — время последнего изменения атрибута или содержимого файла. Атрибут включает права доступа к файлу, право собственности на файл или местонахождение файла.
Чтобы отобразить статус файла, включая временные метки, используйте команду stat .
Для создания нового файла требуются права на запись в родительский каталог. В противном случае вы получите сообщение об ошибке в разрешении отказано.
Как использовать сенсорную команду
В простейшей форме при использовании без каких-либо опций, если имя файла, указанное в качестве аргумента, не существует, touch создаст новый файл.
Если файл уже существует, коснитесь, чтобы изменить время последнего доступа и модификации файла на текущее время.
Например, если файл file1 не существует, следующая команда создаст его, иначе она изменит его временные метки:
Чтобы создать или изменить несколько файлов одновременно, укажите имена файлов в качестве аргументов:
Если вы не хотите, чтобы команда touch создавала новые файлы, используйте параметр -c ( —no-create ).
Например, если существует файл file1 следующая команда изменит временные метки файла, в противном случае она ничего не сделает:
Изменение только времени доступа или модификации
По умолчанию, если параметр не используется, прикосновение обновит время последнего доступа к файлу и времени изменения до текущего времени. Используя параметры -a и -m , вы можете изменить только одну из этих временных меток.
Меняем только время доступа
Используйте параметр -a чтобы изменить только время доступа к файлу:
Измените только время изменения
Используйте параметр -m чтобы изменить время изменения файла:
При изменении времени изменения время изменения также будет обновлено.
Установка конкретных отметок времени
Сенсорная команда также позволяет нам обновлять или создавать файл с определенным временем, отличным от текущего времени.
Используйте параметр -d ( —date= ), чтобы указать строку даты и использовать ее вместо текущего времени.
Например, чтобы изменить время последнего доступа и модификации file1 на 1 июня 2018 11:02, вы должны использовать следующую команду:
Строку даты необходимо заключить в одинарные кавычки.
Вы также можете указать частичную строку даты и времени для сенсорной команды. Предоставляя только дату, автоматически меняет год на текущий:
Используйте параметр -t чтобы указать отметку времени и использовать ее вместо текущего времени. Аргумент отметки времени должен быть в следующем формате:
Например, следующая команда установит время последнего доступа и модификации file1 на 1 июня 11:02 текущего года.
Использование метки времени другого файла
Параметр -r ( —reference= ) позволяет нам указать справочный файл и использовать его временные метки вместо текущего времени.
Например, следующая команда скажет touch использовать время file1 для file2 :
Изменение метки времени символической ссылки
По умолчанию, если вы используете сенсорную команду для символической ссылки, она изменяет временные метки файла, на который она указывает.
Используйте -h ( —no-dereference ), чтобы изменить метку времени символической ссылки.
Например, чтобы изменить временные метки символической ссылки symlink1 вы должны использовать:
Выводы
К настоящему времени вы должны хорошо понимать, как использовать сенсорную команду Linux.
Источник
Использование команды touch в Linux
Как известно, в операционных системах Linux присутствует огромное количество встроенных терминальных команд, выполняющих самые разнообразные действия. Некоторые из них позволяют устанавливать программы, другие предназначены для управления логическими томами и жесткими дисками. Существуют среди них и те, которые созданы для взаимодействия с файлами. Одна из таких команд называется touch, и именно о ней мы и хотим рассказать в рамках данного обучающего материала.
Используем команду touch в Linux
Для использования команды touch в Linux потребуется изучить ее синтаксис и понять принципы ввода. С этим не должно возникнуть никаких проблем, поскольку сама утилита довольно проста, а с доступными опциями можно разобраться буквально за несколько минут. Давайте как раз и начнем с этого.
Синтаксис
Обратим внимание на стандартный вид строки при вводе команды touch. Она выглядит так: touch + [Опции] + Файл . Если же действие нужно осуществить от имени суперпользователя, в начале строки придется добавить sudo, а после ее активации написать пароль, подтверждающий учетную запись. Что касается дополнительных опций, то стоит отметить следующие:
- ––help и ––version используются редко. Первая опция даст возможность прочесть официальную документацию, а вторая отобразит текущую версию утилиты.
- -a отвечает за изменение времени доступа к указанному файлу.
- -m изменяет время модификации.
- -c определяет, что объект с указанным именем создан не будет.
- -r позволит использовать время доступа и модификации указанного файла.
- -t предназначена для изменения даты и времени путем ручного ввода.
- -d использует дату и время, заданные в виде строки.
Теперь вы знаете абсолютно обо всех доступных опциях рассматриваемой сегодня команды. Давайте перейдем к изучению параметров, чтобы разобраться со всеми основными действиями, выполняемыми при помощи данной утилиты.
Генерация пустых файлов
Для начала разберемся с действием команды touch без применения каких-либо аргументов — так она создает пустой файл размером 0 байт с указанным названием.
- Откройте «Терминал» удобным для вас образом, например, через значок в меню приложений или комбинацию клавиш Ctrl + Alt + T.
После активации этой команды, если она прошла без каких-либо ошибок, появится новая строка для ввода, а в текущем расположении создастся соответствующий объект.
Вы можете добавить несколько файлов одновременно, по очереди написав название каждого, чтобы получилась примерно такая строка: touch testfile1 testfile2 testfile3 .
Имеется одна особенность, которую тоже следует учитывать. Если появилась надобность создать несколько файлов с одинаковым названием, но с разными цифрами в конце, как это было показано выше, проще использовать такой тип написания: touch testfile <1..6>.
Больше команда touch без применения аргументов ничего сделать не способна, поэтому давайте сразу же перейдем к разбору примеров взаимодействия с опциями.
Установка времени последнего доступа
Как вы уже знаете, одна из опций рассматриваемой команды разрешает изменить время доступа к файлу на текущее. Осуществляется это путем ввода всего одной строки которая имеет вид touch -a file , где file — имя необходимого объекта. Количество перечисляемых элементов для одной строки не ограничивается. При этом время последнего изменения не устанавливается, если только в данной строке не дописана дополнительная опция -m, о ней мы и поговорим далее.
Установка времени последнего изменения
По той же аналогии работает и упомянутый выше аргумент -m. Ое переназначает время последнего изменения на текущее, а строка выглядит так: touch -m file . Все внесенные изменения вступают в действие сразу же, а это значит, что вы можете переходить к их проверке или к выполнению других задач, ради которых и вызывалась команда touch с опцией -m.
Запрет на создание объекта
Простая утилита touch иногда позволяет реализовать и сложную цель путем ввода буквально одной строки в консоль. После выполнения команды touch -c file , где file — точное название нужного файла, элемент с указанным именем нельзя будет создать обычному пользователю. Деактивируется эта опция только после того, как привилегированный пользователь создаст пустой объект с таким же названием через эту же команду. Дополнительно ничего не мешает вам создать список из названий, чтобы одновременно установить на них ограничения.
Установка времени доступа и изменений
Приведенные выше опции -a и -m позволяли только изменить параметры файла, установив текущее время, однако имеется возможность задать абсолютно любое время с точностью до секунды. При этом главное — соблюдать правило ввода: [[ВВ]ГГ]ММДДччммм[.сс] , где ВВ — первые две цифры года, ГГ — вторые, ММ — месяц, ДД — дата, чч — часы, мм — минуты, сс — секунды. Необходимая команда получается такой: touch -c -t 01261036 file .
Если вы заинтересованы в просмотре итогового результата, напишите в консоли ls -l и нажмите на Enter. В списке остается только отыскать необходимый файл и просмотреть, когда он был модифицирован.
Перенос временных меток выбранного файла
Если вы ознакомились с приведенной выше информацией, то знаете, что опция -r разрешит перенести временные метки одного объекта на другой. Осуществляется это через строку: touch -r file1 file2 , где file1 — уже имеющийся файл с определенными временными метками, а file2 — новый объект, к которому они и будут применены.
Создание файла с указанным временем
В конце данного материала отметим, что по умолчанию touch создает файлы с актуальным временем, однако это можно изменить, применив всего одну опцию: touch -t 201912101830.55 file , где 201912101830.55 — точно указанное время на ваш выбор, а file — название того самого объекта или объектов, если они будут представлены в виде списка.
Теперь вы знакомы с командой touch, которая активно используется в Linux для создания файлов. Это могут быть как отдельные тестовые элементы, так и объекты, добавленные для определенных целей. Пользователь уже сам решает, в каком русле применять возможности утилиты. Если вас заинтересовала тема основных команд этой операционной системы, предлагаем изучить представленные далее материалы.
Помимо этой статьи, на сайте еще 12315 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник