| touch | |
|---|---|
Example of touch usage | |
| Original author | AT&T Bell Laboratories |
| Developers | Paul Rubin, Arnold Robbins, Jim Kingdon, David MacKenzie, Randy Smith, TSC, Microware, Apple, Digital Research, Novell, Kris Heidenstrom |
| Initial release | January 1979 |
| Written in | C |
| Operating system | Unix, Unix-like, Plan 9, Inferno, FLEX, OS-9, Classic Mac OS, Windows, DR DOS, AROS, FreeDOS, ReactOS, KolibriOS, IBM i |
| Platform | Cross-platform |
| Type | Command |
| License | coreutils: GPLv3+ FreeDOS: GPLv2 ReactOS: BSD-4-Clause BusyBox: GPL-2.0-only Toybox: 0BSD Plan 9: MIT License |
touch is a shell command that sets the modification timestamp of an existing file to be current – which on a Unix-based file system includes special files such as directories. If the input path does not specify an existing file, then it creates a new, regular file at the path.
The Single UNIX Specification (SUS) specifies that touch changes the access or modification timestamps, or both. The file is identified by file system path supplied as the sole argument. If the path does not specify a file, the command creates a file with access and modification timestamps as specified or by default to the current time.
By default (no options specified), touching a file is equivalent to creating it with no content or if it exists, opening and saving it without any content changes to update the modification timestamp to be current. This convenience functionality is useful for a variety of scenarios including build and backup. The tools used in such scenarios typically ignore files that are older than a certain point of time. For example, make ignores a source code file that is older than the object file it is used to create.
The command is often used to create a new file, so that can subsequently open it in an editor or to create a file required by an operation that does not require specific content.
A command first appeared in Version 7 AT&T UNIX. Today, the command is available for many operating systems, including many Unix and Unix-like systems, Windows (via UnxUtils[1] and Touch for Windows.[2]), classic Mac OS, DOS, FreeDOS,[3][4] DR DOS 6.0,[5] KolibriOS,[6] FLEX,[7] AROS,[8] OS-9,[9] ReactOS,[10] and IBM i.[11] The version bundled in GNU Core Utilities was written by Paul Rubin, Arnold Robbins, Jim Kingdon, David MacKenzie, and Randy Smith.[12]
See also
References
- ^ "Native Win32 ports of some GNU utilities". unxutils.sourceforge.net. Archived from the original on 9 February 2006. Retrieved 11 August 2025.
- ^ "touch for Windows".
- ^ "ibiblio.org FreeDOS Package -- touch (Unix-like)". www.ibiblio.org. Archived from the original on 13 March 2019. Retrieved 13 November 2018.
- ^ "ibiblio.org FreeDOS Group -- Utilities". www.ibiblio.org. Archived from the original on 30 September 2018. Retrieved 13 November 2018.
- ^ "DR DOS 6.0 User Guide Optimisation and Configuration Tips" (PDF). Archived from the original on 30 September 2019. Retrieved 11 August 2019.
- ^ "Shell - KolibriOS wiki". wiki.kolibrios.org. Archived from the original on 11 February 2019. Retrieved 11 August 2019.
- ^ "FLEX 9.0 User's Manual" (PDF). Archived (PDF) from the original on 25 July 2021. Retrieved 10 June 2019.
- ^ "AROS Research Operating System". aros.sourceforge.io. Archived from the original on 2 July 2019. Retrieved 12 September 2020.
- ^ Paul S. Dayan (1992). The OS-9 Guru - 1 : The Facts. Galactic Industrial Limited. ISBN 0-9519228-0-7.
- ^ "reactos/reactos". GitHub. Archived from the original on 11 December 2017. Retrieved 29 July 2019.
- ^ IBM. "IBM System i Version 7.2 Programming Qshell" (PDF). IBM. Archived (PDF) from the original on 18 September 2020. Retrieved 5 September 2020.
- ^ "touch(1): change file timestamps - Linux man page". linux.die.net. Archived from the original on 27 March 2019. Retrieved 27 January 2019.
Further reading
- McElhearn, Kirk (2006). The Mac OS X Command Line: Unix Under the Hood. John Wiley & Sons. ISBN 978-0470113851.
External links
- – Shell and Utilities Reference, The Single UNIX Specification, Version 5 from The Open Group
- – Linux User Commands Manual
- – Plan 9 Programmer's Manual, Volume 1
- – Inferno General commands Manual
- examples showing how to use touch
