Pomocí příkazu „touch“ můžete snadno vytvářet nové prázdné soubory nebo aktualizovat časová razítka stávajících souborů/adresářů
Hlavní aplikací dotek
příkaz je vytvářet soubory bez obsahu. Vytváření prázdných souborů se může zdát plýtváním paměti systému, ale je zde háček. dotek
Příkaz je vám k dispozici, když chcete vytvořit časová razítka nebo protokoly při práci na velkém projektu, který vyžaduje vedení a monitorování protokolů. Můžete jednoduše vytvořit prázdný soubor pomocí dotek
a soubor bude mít čas a datum, kdy byl vytvořen. (V informacích o souboru a ne jako v obsahu souboru).
Druhé důležité použití dotek
příkaz je změnit přístup a čas úpravy souboru. Ke každému souboru/adresáři je přidáno jedinečné časové razítko. Zobrazuje čas přístupu a úpravy souboru/adresáře. Ale tyto informace lze snadno změnit pomocí dotek
příkaz.
Podívejme se na použití dotek
příkaz podrobněji se srozumitelnými příklady.
Možnosti používané s dotek
příkaz
K dispozici jsou různé možnosti, které lze použít s dotek
příkaz.
Volba | Popis |
---|---|
-A | změnit čas přístupu k souboru |
-m | změnit čas změny souboru |
-C | změnit přístupový čas souboru bez vytvoření nového |
-r | použijte referenční soubor pro nastavení časových razítek souboru nebo adresáře |
-d | nastavení stejného libovolného časového razítka pro přístup a čas modifikace pomocí volného formátu data čitelného člověkem |
-t | vytvořit soubor pomocí zadaného času |
Použitím dotek
Příkaz
The dotek
příkaz lze použít k vytvoření prázdných souborů bez použití jakékoli možnosti. Podle níže uvedených příkladů vytvořte jeden i více prázdných souborů.
Chcete-li vytvořit prázdný soubor
Můžete použít dotek
příkaz bez možnosti vytvořit jediný prázdný soubor.
Syntax:
dotknout se [název-souboru]
Příklad:
gaurav@ubuntu:~/workspace$ klepněte na iift.txt
Zde jsem vytvořil soubor s názvem iift.txt pomocí dotek
příkaz. Použijte ls
příkaz, abyste zjistili, zda je soubor vytvořen.
gaurav@ubuntu:~/workspace$ ls iift.txt init1 init2 init3 init4
Chcete-li zobrazit informace o souboru, můžete použít stat
příkaz následovně.
gaurav@ubuntu:~/workspace$ stat iift.txt Soubor: iift.txt Velikost: 0 Bloky: 0 Blok IO: 4096 běžný prázdný soubor Zařízení: 808h/2056d Inode: 1990385 Odkazy: 1 Přístup: (0644/-rw-r --r--) UID: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 10:18:43.318160860 +0530 Upravit: 2020-09-14 10:18:1603 10:18:1603.03 2020-09-14 10:18:43.318160860 +0530 Narození: - gaurav@ubuntu:~/workspace$
Chcete-li vytvořit více prázdných souborů
Pokud chcete vytvořit více prázdných souborů najednou, můžete použít dotek
příkaz následujícím způsobem.
Syntax:
dotkněte se [název souboru-1] [název souboru-2] [název souboru-3]
Příklad:
gaurav@ubuntu:~/workspace$ touch log1.txt ssh.txt filemove.c gaurav@ubuntu:~/workspace$ ls -l celkem 36 -rw-r--r-- 1 gaurav gaurav 0. září 14 10:35 filemove .c -rw-r--r-- 1 gaurav gaurav 0 14. září 10:18 iift.txt -rw-r--r-- 1 gaurav gaurav 0 14. září 10:35 log1.txt -rw-r-- r-- 1 gaurav gaurav 0. září 14 10:35 ssh.txt
Zde jsem vytvořil tři soubory ‚log1.txt‘, ‚ssh.txt‘ a ‚filemove.c‘. Tyto mají různé přípony souborů.
Můžete také hromadně vytvářet prázdné soubory následujícím způsobem.
Syntax:
klepněte na [název souboru]-{1..n}.txt
Příklad:
Vytvoříme 10 souborů viz. sheldon_log-1.txt, sheldon_log-2.txt a tak dále až po sheldon_log-10.txt
gaurav@ubuntu:~/workspace$ touch sheldon_log-{1..0}.txt gaurav@ubuntu:~/workspace$
gaurav@ubuntu:~/workspace$ ls filemove.c iift.txt sheldon_log-10.txt sheldon_log-2.txt sheldon_log-4.txt sheldon_log-6.txt sheldon_log-8.txt gsy.c log1.txt sheldon_log-1. txt sheldon_log-3.txt sheldon_log-5.txt sheldon_log-7.txt sheldon_log-9.txt gaurav@ubuntu:~/workspace$
Změnit nebo upravit přístupový čas souboru nebo adresáře
Časové razítko přístupu je čas posledního čtení souboru. Kdykoli uživatel čte soubor, aktualizuje se časové razítko přístupu k tomuto souboru. Časové razítko přístupu označuje čas, kdy byl soubor naposledy otevřen. S tímto souborem nebo adresářem neprobíhá žádná úprava, ale pouze se na něj odkazuje nebo se na něj odkazuje.
Použitím dotek
příkaz s možností -A
upravuje ‚Dobu přístupu‘ konkrétního souboru. Nový „Čas přístupu“ bude nastaven na aktuální datum a čas. Chcete-li zkontrolovat aktuální čas přístupu a čas změny, použijte stat
příkaz.
Úprava souboru
Syntax:
dotknout se -a [název souboru]
Příklad:
Uvidíme aktuální přístupový čas souboru, který má být upraven.
gaurav@ubuntu:~/workspace$ stat log1.txt Soubor: log1.txt Velikost: 0 Bloky: 0 Blok IO: 4096 běžný prázdný soubor Zařízení: 808h/2056d Inode: 2001385 Odkazy: 1 Přístup: (0644/-rw-r --r--) UID: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Přístup: 2020-09-13 23:52:19.305416141 +0530 Upravit: 2020-09-13 23:507:090.20 2020-09-13 23:52:19.305416141 +0530 Narození: - gaurav@ubuntu:~/workspace$
Použitím dotknout se -a
změnit přístupový čas souboru log1.txt na aktuální datum a čas.
Výstup:
gaurav@ubuntu:~/workspace$ dotkněte se -a log1.txt gaurav@ubuntu:~/workspace$
gaurav@ubuntu:~/workspace$ stat log1.txt Soubor: log1.txt Velikost: 0 Bloky: 0 Blok IO: 4096 běžný prázdný soubor Zařízení: 808h/2056d Inode: 2001385 Odkazy: 1 Přístup: (0644/-rw-r --r--) UID: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 10:59:24.972855176 +0530 Upravit: 2020-09-13 23:507:090.20 2020-09-14 10:59:24.972855176 +0530 Narození: - gaurav@ubuntu:~/workspace$
Můžete pozorovat, že přístupová doba souboru log1.txt je nyní změněna.
Úprava adresáře
dotknout se -a
lze také použít k úpravě doby přístupu k adresáři stejným způsobem jako u souboru.
Syntax:
touch -a [cesta_adresáře]
Příklad:
gaurav@ubuntu:~$ stat ./workspace/tomcat Soubor: ./workspace/tomcat Velikost: 4096 Bloky: 8 IO Blok: 4096 adresář Zařízení: 808h/2056d Inode: 2039942 Odkazy: 3 Přístup: (0775/drwxxrwx UID: ( 1000/ gaurav) GID: ( 1000/ gaurav) Přístup: 2018-03-30 11:18:28.912666800 +0530 Změnit: 2018-03-30 00:13:02.4052194 103:10 02.01. :18:28.912666800 +0530 Narození: -
Použitím dotknout se -a
změnit dobu přístupu k adresáři tomcat.
gaurav@ubuntu:~$ touch -a ./workspace/tomcat
gaurav@ubuntu:~$ stat ./workspace/tomcat Soubor: ./workspace/tomcat Velikost: 4096 Bloky: 8 IO Blok: 4096 adresář Zařízení: 808h/2056d Inode: 2039942 Odkazy: 3 Přístup: (0775/drwxxrwx UID: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 11:21:10.638538949 +0530 Změnit: 2018-03-30 00:13:02.4052194 103 103 Změna:100195 :21:10.638538949 +0530 Narození: - gaurav@ubuntu:~$
Zde je nyní přístupový čas adresáře ‚tomcat‘ změněn na aktuální datum a čas.
Změnit čas úpravy souboru/adresáře
Čas modifikace označuje, kdy byl obsah souboru naposledy upraven. Program nebo proces soubor upravil nebo upravil. „Upraveno“ znamená, že něco uvnitř souboru bylo změněno, odstraněno nebo byla přidána nová data.
Použitím dotek
příkaz spolu s volbou -m
upravuje ‚Čas úpravy‘ souboru nebo adresáře. Pro soubor a adresář lze nasadit následující metody.
Pro soubor
touch -m [název souboru]
Příklad:
Za prvé pomocí stat
příkaz pro zobrazení času změny souboru.
gaurav@ubuntu:~/workspace$ stat iift.txt Soubor: iift.txt Velikost: 66 Bloky: 8 IO Blok: 4096 běžný soubor Zařízení: 808h/2056d Inode: 1990385 Odkazy: 1 Přístup: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 11:33:36.927262587 +0530 Upravit: 2020-09-12 08:3919037 Změna: 08:391908.202 -09-12 08:33:28,339190370 +0530
Nyní použijte dotek -m
příkaz pro úpravu času úpravy.
gaurav@ubuntu:~/workspace$ touch -m iift.txt
gaurav@ubuntu:~/workspace$ stat iift.txt Soubor: iift.txt Velikost: 66 Bloky: 8 IO Blok: 4096 běžný soubor Zařízení: 808h/2056d Inode: 1990385 Odkazy: 1 Přístup: (0644/-rw-r- -r--) UID: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 11:33:36.927262587 +0530 Upravit: 2020-09-14 11:397231 11:3097235 +02 -09-14 11:34:34.719723531 +0530 Narození: - gaurav@ubuntu:~/workspace$
„Čas úpravy“ souboru iift.txt
se nyní změní na aktuální datum a čas.
Pro Adresář
touch -m [cesta_adresáře] NEBO [název_adresáře]
Příklad:
Změníme Čas úpravy adresáře s názvem ‚tomcat‘ pomocí dotek -m
příkaz. Pojďme zjistit jeho aktuální „Čas úpravy“ pomocí stat
příkaz.
gaurav@ubuntu:~/workspace$ stat kocour Soubor: kocour Velikost: 4096 Bloky: 8 IO Blok: 4096 adresář Zařízení: 808h/2056d Inode: 2039942 Odkazy: 3 Přístup: (0775/drwxrwxr-x) Uid: ( garavu00 ) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 11:21:10,638538949 +0530 Upravit: 2019-07-12 11:43:22,482485281 +0542 2017:0542 Změna: 2048:0514 Narození: -
Výstup:
gaurav@ubuntu:~/workspace$ touch -m kocour
gaurav@ubuntu:~/workspace$ stat kocour Soubor: kocour Velikost: 4096 Bloky: 8 IO Blok: 4096 adresář Zařízení: 808h/2056d Inode: 2039942 Odkazy: 3 Přístup: (0775/drwxrwxr-x) Uid: ( garavu00 ) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 11:21:10,638538949 +0530 Upravit: 2020-09-14 11:43:22,482485281 +0542 2012:2041:5042 Změna: 204121 Narození: - gaurav@ubuntu:~/workspace$
Zde jsem změnil časové razítko úprav pro adresář „tomcat“.
Změna přístupového času bez vytvoření nového souboru
dotek
příkaz při spuštění vytvoří nový prázdný soubor. Mohou však nastat případy, kdy je soubor již vytvořen a vy chcete pouze upravit přístupový čas tohoto souboru, aniž byste vytvořili nový.
V této situaci můžete použít dotek
příkaz s -C
možnost, která zabrání vytvoření nového souboru a přesto vám umožní upravit časové razítko Access.
Syntax:
touch -c [název souboru]
Příklad:
gaurav@ubuntu:~/workspace$ touch -c iift.txt gaurav@ubuntu:~/workspace$ ls demo gsy.c log1.txt sheldon_log-1.txt sheldon_log-3.txt sheldon_log-5.txt sheldon_log-7.txt sheldon_log-9.txt filemove.c iift.txt sheldon_log-10.txt sheldon_log-2.txt sheldon_log-4.txt sheldon_log-6.txt sheldon_log-8.txt tomcat gaurav@ubuntu:~/workspace$
Podobně můžete změnit přístupovou dobu již existujícího adresáře. K tomu můžete použít následující metodu.
Příklad:
Zobrazení aktuálního časového razítka přístupu k adresáři kocour.
gaurav@ubuntu:~/workspace$ stat kocour Soubor: kocour Velikost: 4096 Bloky: 8 IO Blok: 4096 adresář Zařízení: 808h/2056d Inode: 2039942 Odkazy: 3 Přístup: (0775/drwxrwxr-x) Uid: ( garavu00 ) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 11:21:10,638538949 +0530 Upravit: 2020-09-14 11:43:22,482485281 +0542 2012:2041:5042 Změna: 204121 Narození: - gaurav@ubuntu:~/workspace$
gaurav@ubuntu:~/workspace$ touch -c kocour
Zde jsem změnil přístupový čas již existujícího adresáře „tomcat“.
Výstup:
gaurav@ubuntu:~/workspace$ stat kocour Soubor: kocour Velikost: 4096 Bloky: 8 IO Blok: 4096 adresář Zařízení: 808h/2056d Inode: 2039942 Odkazy: 3 Přístup: (0775/drwxrwxr-x) Uid: ( garavu00 ) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 20:18:52.625031128 +0530 Upravit: 2020-09-14 20:18:52,625031128 +0528 Změna: 206-09 21.05. Narození: - gaurav@ubuntu:~/workspace$
Křížová kontrola výstupu:
gaurav@ubuntu:~/workspace$ touch -c temp.cpp gaurav@ubuntu:~/workspace$ ls temp.cpp ls: nemá přístup k 'temp.cpp': Žádný takový soubor nebo adresář gaurav@ubuntu:~/workspace$
Zde jsem se pokusil použít dotyk -c
s temp.cpp
. Tento soubor neexistuje. Můžeme tedy říci, že pomocí dotek
s opcí -C
zabraňuje vytváření nových prázdných souborů a upravuje časové razítko pouze pro existující soubor.
Úprava přístupu a časového razítka na konkrétní datum a čas
V předchozích blocích jste si museli všimnout, že kdykoli použijeme dotek
příkaz pro změnu časových razítek se změní na aktuální čas a datum.
Mohou však nastat případy, kdy budete možná muset použít přizpůsobený čas a datum. Použitím dotek
příkaz s -C
a -t
možnosti mohou sloužit účelu.
Příklad:
Změním v souboru časové razítko přístupu a úprav iift.txt na přizpůsobený čas a datum.
gaurav@ubuntu:~/workspace$ stat iift.txt Soubor: iift.txt Velikost: 66 Bloky: 8 IO Blok: 4096 běžný soubor Zařízení: 808h/2056d Inode: 1990385 Odkazy: 1 Přístup: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 12:04:07.091786565 +0530 Upravit: 2020-09-14 12:0176025 Změna: 02:0976025 -09-14 12:04:07.091786565 +0530 Narození: -
Datum a čas lze zadat ve formátu: {CCYY}MMDDhhmm.ss
Parametr | Popis |
CC | První dvě číslice roku |
YY | Druhá dvě číslice roku |
MM | Měsíc roku (01-12) |
DD | Den v měsíci (01-31) |
hh | Hodina dne (00-23) |
mm | Minuty v hodině (00-59) |
Datum používám jako 203011051820 (tj. 5. listopadu 2030, 18:20 hodin).
gaurav@ubuntu:~/workspace$ touch -c -t 203011051820 iift.txt
Tento příkaz změní časové razítko Access a Modify pro soubor iift.txt jak následuje.
gaurav@ubuntu:~/workspace$ stat iift.txt Soubor: iift.txt Velikost: 66 Bloky: 8 IO Blok: 4096 běžný soubor Zařízení: 808h/2056d Inode: 1990385 Odkazy: 1 Přístup: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Přístup: 2030-11-05 18:20:00.000000000 +0530 Upravit: 2030-11-05 18:20:0000.02 Změna: 020000200 -09-14 20:39:55.641781140 +0530 Narození: - gaurav@ubuntu:~/workspace$
Použití referenčního souboru k nastavení časového razítka
dotek
příkaz lze také použít s volbou -r
pro použití časového razítka vámi zvoleného referenčního souboru na váš aktuální soubor.
Syntax:
touch -r [referenční_soubor] [aktuální_soubor]
Příklad:
budeme používat gsy.c
soubor jako referenční soubor. Takže časová razítka gsy.c
bude použit pro soubor iift.txt
. Nejprve zkontrolujte aktuální časová razítka obou těchto souborů stat
příkaz.
gaurav@ubuntu:~/workspace$ stat gsy.c Soubor: gsy.c Velikost: 0 Bloky: 0 Blok IO: 4096 běžný prázdný soubor Zařízení: 808h/2056d Inode: 2001385 Odkazy: 1 Přístup: (0644/-rw-r --r--) UID: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 10:59:24.972855176 +0530 Upravit: 2020-09-13 23:507:090.20 2020-09-14 10:59:24.972855176 +0530 Narození: - gaurav@ubuntu:~/workspace$ stat iift.txt Soubor: iift.txt Velikost: 66 bloků: 8 IO blok: 4096 běžný soubor Zařízení: 8068dh/205 : 1990385 Odkazy: 1 Přístup: (0644/-rw-r--r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Přístup: 2025-10-19 18:20:00.000050000: Upravit + 2025-10-19 18:20:00.000000000 +0530 Změna: 2020-09-14 20:39:55.641781140 +0530
Pomocí příkazu dotek -r
Nyní.
gaurav@ubuntu:~/workspace$ touch -r gsy.c iift.txt
Výstup:
gaurav@ubuntu:~/workspace$ stat iift.txt Soubor: iift.txt Velikost: 66 Bloky: 8 IO Blok: 4096 běžný soubor Zařízení: 808h/2056d Inode: 1990385 Odkazy: 1 Přístup: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Přístup: 2020-09-14 10:59:24.972855176 +0530 Změnit: 2020-09-13 23:505:09020202 -09-14 21:04:27.640026328 +0530 Narození: - gaurav@ubuntu:~/workspace$
Z výstupu můžeme vidět, že časová razítka pro soubor iift.txt
změnila. Nová časová razítka jsou nyní podobná těm z referenčního souboru gsy.c
Závěr
V tomto tutoriálu jsme se dozvěděli o dotek
příkaz a různé možnosti, které jsou s ním k dispozici pro vytváření nových prázdných souborů a upravování časových razítek existujících souborů různými způsoby.