**touch** — каманда Unix, якая прызначана для ўсталёўкі часу апошняга змянення файла ці часу доступу. Таксама ўжываецца для стварэння пустых файлаў.

Гісторыя
--------

Утыліта touch з’явілася ў аперацыйнай сістэме AT&T UNIX Version 7. Версія ўтыліты touch, якая знаходзіцца ў камплекце з GNU coreutils, была распрацавана Полам Рабінам, Арнольдам Робінсам, Джымам Кінгданам, Дэвідам МакКінзі і Рэндзі Смітам.

Спецыфікацыя
------------

Згодна POSIX утыліта touch змяняе час апошняга змянення файла ці час апошняга доступу да яго. Імя файла ці шлях да яго перадаецца ў якасці аргумента. Калі файл не існуе, утыліта стварае пусты файл с указаным імем і ўсталёвае час апошняй змены і апошняга доступу ў значэнне, перададзенае ў якасці аргумента. Калі аргумент часу не зададзены, ужываецца бягучы час.

Сінтаксіс каманды
-----------------

`**touch** [-acfhm] [-r файл] [-t [[CC]YY]MMDDhhmm.[SS]] файл `**-a**``

`````
 Вызначае час апошняга доступу да файлу. Час апошняга змянення не усталёўваецца, калі відавочна  не зададзены ключ -m  

 **-c**  

 Загадвае ўтыліце не ствараць файл, калі ён не існуе, пры гэтым ніякіх паведамленняў аб памылцы паказана не будзе.  

 **-f**  

 Спрабуе аднавіць інфармацыю аб часе, нават калі правы доступу файла не дазваляюць гэта рабіць.  

 **-h**  

 Загадвае ўтыліце не змяняць даные аб файле, калі ён зададзены сімвалічнай спасылкай.  

 **-m**  

 Вызначае час апошняга змянення файла.  

 **-r** *file*  

 Выкарыстоўваць значэнні часу з файла, зададзенага аргументам *file*.  

 **-t** *time*  

 Вызначае час апошняга змянення і доступу ў адпаведнасці з указаным фарматам *time*.
```

Фармат даты, указанай у ключы -t задаецца ў адпаведнасці з шаблонам `[[СС]YY]MMDDhhmm[.SS]`:  


```
 **СС** — першыя дзве лічбы года.  

 **YY** — апошнія дзве лічбы года.  

 Калі параметр CC не зададзены і значэнне YY знаходзіцца ў межах 69 і 99, то  СС вызначаецца роўным 19,  

 у адваротным выпадку ужываецца 20.  

 **MM** — двухзначны нумар месяца.  

 **DD** — двухзначны нумар дня.  

 **hh** — значэнне гадзін даты.  

 **mm** — значэнне хвілін даты.  

 **SS** — значэнне секунд даты.  

```

У розных UNIX-падобных сістэмах сінтаксіс каманды можа адрознівацца. Напрыклад, GNU touch змяшчае опцыю -d, якая дазваляе усталёўваць дату ў фарматах, якія адрозніваюцца ад згаданага вышэй.

Прыклады
--------

Стварае файл myfile.txt і усталёўвае час апошняга змянення і доступу ў бягучы час у сістэме; калі файл існуе — аднаўляе час апошняга змянення і доступу не змяняючы пры гэтым зместу файла:

```
# touch myfile.txt
```

Усталёўвае дату апошняга змянення і доступу на 8:46:26 31 студзеня 2007 г.:

```
# touch -t 200701310846.26 index.html
# touch -d '2007-01-31 8:46:26' index.html
# touch -d 'Jan 31 2007 8:46:26' index.html
```

Спасылкі
--------

* touch Архівавана 5 лютага 2007. — даведкавая старонка GNU coreutils
* touch — даведкавая старонка аперацыйнай сістэмы OpenBSD
* Афіцыйная спецыфікацыя touch
* Прыклады ўжывання touch Архівавана 3 лістапада 2008.

| ⛭Стандартныя праграмы UNIX (усе праграмы) |
| --- |
| Файлавыя сістэмы | chroot · dd · df · fdisk · fsck · mkisofs · mkswap · mount · umount · rehash |
| Файлы і каталогі | cat · chattr · cd · chmod · chown · chgrp · cksum · cmp · cp · diff · du · file · fuser · ln · ls · lsof · mkdir · mv · od · pwd · rm · rmdir · split · touch |
| Працэсы | at · cron · exit · kill · killall · nice · nohup · pgrep · pidof · pkill · ps · renice · sleep · time · top · wait · watch |
| Карыстальнікі | env · finger · id · last · logname · mesg · passwd · su · sudo · uptime · w · wall · who · whoami · write |
| Сетка | ftp · host · ifconfig · netcat · netstat · nmap · nslookup · ping · rlogin · SSH · traceroute · wget |
| Тэксты | AWK · comm · cut · ed · ex · expand · unexpand · fmt · head · iconv · join · less · more · paste · pr · sed · sort · tac · tail · tr · uniq · wc · xargs |
| Камандны радок | alias · basename · bash · bind · dirname · echo · expr · false · printf · test · true · unset |
| Пошук | find · grep · strings · whereis · which |
| Рознае | banner · bc · cal · date · help · lp · man · Xhistory · size · tee · uname · yes · reboot |``