Введение

Команда обновления файла в различных операционных системах

В информатике, touch — это команда, используемая для обновления даты доступа и/или даты изменения компьютерного файла или каталога. Она включена в Unix и Unix-подобные операционные системы, FLEX от TSC, Digital Research/Novell DR DOS, оболочку AROS, оболочку Microware OS 9 и ReactOS. Команда также доступна для FreeDOS и Microsoft Windows.

Обзор

В своем обычном использовании команда эквивалентна созданию или открытию файла и его сохранению без изменения содержимого. Команда touch позволяет избежать открытия, сохранения и закрытия файла. Вместо этого она просто обновляет даты, связанные с файлом или каталогом. Обновленные даты доступа или изменения могут быть важны для различных других программ, таких как утилиты резервного копирования или программа командной строки make. Как правило, такие программы учитывают только файлы, которые были созданы или изменены после последнего запуска программы. Команда touch также может быть полезна для быстрого создания файлов для программ или скриптов, которым требуется наличие файла с определенным именем для успешной работы, но не требуется какое-либо конкретное содержимое файла. Единая спецификация Unix (SUS) определяет, что touch должна изменять время доступа, время модификации или оба этих параметра для файла. Файл идентифицируется путем, указанным в качестве единственного аргумента. Также указано, что если указанный файл не существует, он создается, а время доступа и изменения устанавливается в соответствии с указанными значениями. Если новые временные метки не указаны, touch использует текущее время.

История

Впервые утилита touch появилась в версии 7 AT&T UNIX. Сегодня команда доступна для множества различных операционных систем, включая многие Unix и Unix-подобные системы, DOS, Microsoft Windows и классическую Mac OS. Версия touch, входящая в состав GNU coreutils, была написана Полом Рубином, Арнольдом Роббинсом, Джимом Кингдоном, Дэвидом Маккензи и Рэнди Смитом. Команда доступна как отдельный пакет для Microsoft Windows в составе коллекции UnxUtils, представляющей собой нативные порты Win32 распространенных утилит, подобных GNU Unix. Версия для FreeDOS была разработана Крисом Хайденстромом и распространяется под лицензией GPL. DR DOS 6.0 и KolibriOS включают в себя реализацию этой команды. Команда также была портирована на операционную систему IBM i.