touch es un programa de sistemas Unix utilizado para cambiar la fecha y hora de última modificación de un archivo. También puede utilizarse para crear un archivo vacío. Su sintaxis en línea de comandos es:
$ touch [options] <file_name>
Si el archivo existe, se modifica su hora de acceso y modificación, que se ponen a la fecha y hora actuales del sistema, tal y como sucediera si el archivo hubiera cambiado. Si el archivo no existe, se crea un nuevo archivo vacío. Si no se le indica un nombre de archivo, se toma el directorio actual.
El comando touch puede ser invocado con distintas opciones para cambiar su comportamiento estándar, las cuales pueden variar de un sistema Unix a otro. Por ejemplo, se le puede indicar a un archivo una hora distinta a la actual.
La versión incluida en la mayoría de los sistemas GNU/Linux fue escrita por Paul Rubin, Arnold Robbins, Jim Kingdon, David MacKenzie y Randy Smith.