logo

Touch Command в Linux/Unix с примери

командата touch е начин за създаване на празни файлове (има и някои други методи). Можете да актуализирате времето за модификация и достъп на всеки файл с помощта на командата touch.

Предлага се в ReactOS, Unix, FLEX на TSC, Unix-подобни операционни системи, обвивката Microware OS-9, обвивката AROS и Digital Research/Novell DR DOS. Освен това командата е достъпна за Microsoft Windows и FreeDOS.

  • Това е същото като отварянето или създаването на файл и съхраняването му без никакво известие за съдържанието на файла при употребата му по подразбиране.
  • Командата за докосване игнорира затварянето, записването и отварянето на файла. По-скоро актуализира датите, свързани с директорията или файла.
  • Актуализираната дата на модификация или достъп може да бъде важна за набор от други програми, като помощни програми за архивиране или помощни програми за програмиране на интерфейс на командния ред.
  • Тези програми обикновено са фокусирани само върху файлове, които са били модифицирани или създадени след последното изпълнение на програмата.
  • Освен това командата за докосване може да бъде полезна за бързо създаване на файлове за скриптове или програми, които се нуждаят от файл с определено име, за да бъдат достъпни за успешна работа на програмата, но не е необходимо файлът да включва конкретно съдържание.

SUS (Single Unix Specification) определя, че командата за докосване трябва да променя времената за модификация, времената за достъп или и двете за файловете. Файлът се разпознава по пътека, импортирана като един аргумент. Освен това, това означава, че ако разпознатият файл не съществува, той се прави и времената за модификация и достъп са фиксирани, както е посочено. Командата за докосване прилага текущото време, ако не са зададени нови времеви отпечатъци.

Кратка история на докосването

Първо, помощна програма за докосване се появи във версия 7 AT&T UNIX. Командата днес е достъпна за няколко различни операционни системи, включително различни Unix, DOS, Unix-подобни системи, класическата Mac OS и Microsoft Windows. Пускането на touch, групирано в GNU coreutils, беше уточнено от Пол Рубин, Ранди Смит, Дейвид Макензи, Джим Кингдън и Арнолд Робинс.

За Microsoft Windows командата е изолиран пакет като част от родната колекция Win32 портове UnxUtils от GNU Unix-подобни помощни програми. Изданието FreeDOS е лицензирано под GPL и е интегрирано от Kris Heidenstrom. KolibriOS и DR DOS 6.0 добавят внедряване на командата за докосване. Освен това командата за докосване е изпратена до IBM i OS.

Работа с докосване в Ubuntu

touch е често срещана команда на Linux за създаване на празен файл или за промяна на времевите клейма на файла (време за достъп до файла, последна дата или модификация).

"каква е разликата между лъв и тигър"

Времеви отпечатъци

Linux файловете съдържат три времеви клейма: ctime, mtime и atime. Тези времеви отпечатъци са обяснени по-долу:

    време:Той включва подробности за това кога съдържанието на файла се чете с команди или инструменти за показване на съдържанието на файла като head, grep, cat, vim, vi, nano, less и т.н. Времето на atime се променя и актуализира всеки път, когато се проверява.mtime:Той показва последната модификация на съдържанието на файл, като името му, но само самия файл, а не разрешението или собственика му.ctime:Също така, ctime представлява кога някой файл е променен, но също така се актуализира, ако разрешението, групата или достъпът на собственост върху който и да е файл е променено. Можем да редактираме mtime и atime, но не можем да променим ctime. Часът ще бъде актуализиран, ако разрешенията за даден файл са променени или ако файловете са променени или прочетени.

Синтаксис:

 touch 

Пример:

 touch myfile1 

Команда TOUCH

Погледнете по-горе, създадохме два файла, а именно „myfile1“ и „myfile2“ чрез команда с докосване. За да създадете няколко файла, просто въведете имената на всички файлове с една команда с докосване, последвана от клавиш enter. Например, ако искате да създадете „myfile1“ и „myfile2“ едновременно, тогава вашата команда ще бъде:

 touch myfile1 myfile2 

докоснете Опции

опцияфункция
докосване -а За да промените достъпа до файла и времето за промяна.
докосване -м Използва се само за промяна на времето на файл.
докосване -р За да актуализирате времето на един файл спрямо другия файл.
докосване -т За да създадете файл, като посочите часа.
докосване -c Не създава n празен файл.
-d=, --date=Тази опция се използва за промяна на клеймото за време с низ от дата.
-h, --без дереференцияТой променя клеймото за време на символна връзка.
-f Няма ефект.Опцията налага модификации в по-стари BSD.
--версия, -vПоказва версията на програмата.
--помогнеПоказва помощното меню.

Linux touch - команда

touch команда с опция 'a' се използва за промяна на времето за достъп до файл. По подразбиране ще отнеме текущото време на вашата система.

Синтаксис:

 touch -a 

Пример:

 touch -a usr 

За да видите времето за достъп и промяна на вашия файл, трябва да използвате статистика команда.

чакал срещу вълк
TOUCH - команда

В горната моментна снимка използвахме командата 'stat' (която ще научим в по-късен урок) само за да проверим състоянието на нашата директория (usr). Така че не се бъркайте с това. Сега можете да съпоставите времето за достъп на директорията (usr) преди и след предаване на командата 'touch -a usr. Отне времето за достъп по подразбиране на нашата система.

Linux touch -m команда

Докосването на опцията '-m' ще ви помогне да промените само времето за модификация на файл.

Синтаксис:

файл с разширение java
 touch -m 

Пример:

 touch -m usr 
Команда TOUCH

Забележете внимателно в горната моментна снимка, само времето за модификация е променено.

Linux опция touch -r

Тази команда ще актуализира времето във връзка с другата спомената команда. Има два начина да използвате тази команда. И двете работят еднакво.

В примера по-долу искаме да променим времевия печат на „Demo.txt“ във връзка с 'demo.txt' . Първо можете да го напишете като,

 touch -r demo.txt Demo.txt 

или

 touch Demo.txt -r demo.txt 

Първо ще видим състоянието на двата файла, преди да използваме командата за докосване.

Команда TOUCH

Сега след употреба докосване -r demo.txt Demo.txt команда, време на Demo.txt е променено по отношение на времето на demo.txt

Команда TOUCH

Linux touch -t команда

с тази команда можете да промените времето за достъп до файл, като определите определено време за него.

ascii таблица java

Той ще промени часа по определено време вместо по подразбиране.

Форматът на времето ще бъде:

 touch -t YYYYMMDDhhmm.ss 

Екранната снимка по-долу показва състоянието на файл 2.webp преди командата за докосване,

Команда TOUCH -t

Тази екранна снимка показва, че времето на файла 2.webp е променено от определеното от нас време.

Команда TOUCH

Linux touch -c команда

Използването на опцията 'c' с команда за докосване няма да създаде празен файл, ако този файл не съществува.

Синтаксис:

 touch -c 

Пример:

 touch -c movie 

Команда TOUCH

На фигурата по-горе искахме да създадем файл „movie“, но с опция „c“ не беше създаден файл.

как да изпълните скрипт

Задайте конкретен времеви печат

Можем да използваме командата touch, за да коригираме конкретен времеви печат за файл. Например:

 touch -t 

Форматът на клеймото за време следва определен модел:

 [[CC]YY]MMDDhhmm[.ss] 

Където,

    CC:Това са първите две цифри за годината.ГГ:Това са последните две цифри за годината.MM:Показва месеца.ДД:Показва деня.чч:Показва часа.mm:Показва минутите.ss:Показва секундите.

Задаване на времево клеймо на файла с низа от данни

Можем да използваме командата touch с флага -d за задаване на клеймо за време с низ от дата. Синтаксисът му е както следва:

 touch -d 

Низът за дата е регулируем формат за време и позволява няколко четими от човека текстови формати. Няколко примера са както следва:

  • Календарни дати, напр. 19 август 2020 г.
  • Час от деня, напр. 21:28 или 7:03 сутринта.
  • Дни от седмицата, например вторник, сряда и т.н.
  • Относително време, например преди 8 години, следващата сряда, вчера и т.н.