Polecenie $ touch
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc eu feugiat sapien. Aenean ligula nunc, laoreet id sem in, interdum bibendum felis. Donec vel dui neque. Praesent ac sem ut justo volutpat rutrum a imperdiet tellus. Nam lobortis massa non hendrerit hendrerit. Vivamus porttitor dignissim turpis, eget aliquam urna tincidunt non. Aliquam et fringilla turpis. Nullam eros est, eleifend in ornare sed, hendrerit eget est. Aliquam tellus felis, suscipit vitae ex vel, fringilla tempus massa. Nulla facilisi. Pellentesque lobortis consequat lectus. Maecenas ac libero elit.
-
Narodziny w AT&T Unix: Polecenie
touchpojawiło się po raz pierwszy w Version 7 Unix (V7) w 1979 roku, stworzone w Bell Labs. Powstało, aby rozwiązać konkretny problem: programiści potrzebowali prostego sposobu na odświeżanie znaczników czasu plików bez konieczności ich otwierania i ponownego zapisywania. -
Ewolucja i standaryzacja POSIX: Z biegiem lat narzędzie trafiło do rozmaitych odmian systemu (takich jak BSD czy System V). W latach 80. i 90. składnia polecenia została ustandaryzowana przez normę POSIX, co zagwarantowało, że
touchdziała niemal identycznie na każdym systemie Unix i Unix-like. -
Wersja GNU (Linux): Wraz z rozwojem projektu GNU powstała darmowa implementacja polecenia (
coreutils), która trafiła do dystrybucji Linux. Wzbogaciła onatoucho bardziej intuicyjne składnie, np. możliwość podawania daty w formacie czytelnym dla człowieka (touch -d "2 days ago").
Czym jest i jak działa touch?
Zasada działania programu jest prosta:
-
Jeśli plik nie istnieje –
touchtworzy nowy, pusty plik o podanej nazwie. -
Jeśli plik istnieje –
touchaktualizuje czas jego ostatniego dostępu oraz ostatniej modyfikacji na bieżącą godzinę i datę, nie zmieniając zawartości pliku.
Podstawowe zastosowania i przykłady
1. Szybkie tworzenie pustego pliku Aby utworzyć nowy plik (lub kilka naraz), wystarczy podać ich nazwy po spacji:
Bash
touch plik.txt
touch dokument1.txt dokument2.txt dokument3.txt
2. Modyfikacja wybranego znacznika czasu
-
-a(access time) – zmienia wyłącznie czas ostatniego dostępu. -
-m(modification time) – zmienia wyłącznie czas ostatniej modyfikacji.
Bash
touch -m plik.txt
3. Ustawienie konkretnej daty i godziny Dzięki fladze -t można ręcznie przypisać plikowi dowolną datę i czas (w formacie YYYYMMDDhhmm.ss):
Bash
touch -t 202601011200.00 stary_plik.txt
4. Zapobieganie tworzeniu nowych plików Flaga -c (no-create) gwarantuje, że jeśli plik nie istnieje, polecenie go nie utworzy:
Bash
touch -c plik.txt
Do czego przydaje się touch w praktyce?
-
Tworzenie struktury projektów: Narzędzie pozwala w kilka sekund przygotować puste pliki źródłowe czy konfiguracyjne.
-
Automatyzacja i systemy budowania (
make): Systemy automatyzacji sprawdzają datę modyfikacji plików, aby zdecydować, co skompilować. Użycietouchwymusza ponowną kompilację bez ingerencji w kod. -
Testowanie skryptów: Ułatwia symulowanie operacji na plikach o różnych datach (np. przy pisaniu skryptów czyszczących stare archiwum).