Przejdź do głównej zawartości

touch


touch służy do tworzenia nowych, pustych plików oraz do zmiany dat i godzin dostępu (atime) i modyfikacji (mtime) istniejących plików. Jest często używane w skryptach, przy testach oraz do aktualizacji znaczników czasu w celu wywołania określonych akcji w systemie.

  • Zastosowania: szybkie tworzenie plików, aktualizacja timestampów, wymuszanie ponownej kompilacji w systemach build.
  • Dostępność: GNU coreutils (Linux), Unix, BSD, macOS.

Okno terminala
touch [opcje] plik...
  • Można podać wiele plików naraz; jeśli plik nie istnieje, zostanie utworzony pusty.

ParametrOpis
plikNazwa pliku do utworzenia lub zmodyfikowania.
-aZmienia tylko czas dostępu (atime).
-mZmienia tylko czas modyfikacji (mtime).
-t [[CC]YY]MMDDhhmm[.ss]Ustawia czas na podaną datę i godzinę.
-r plik_refKopiuje czasy z innego pliku.
-cNie tworzy pliku, jeśli nie istnieje.
--helpPomoc.
--versionWersja programu.

Okno terminala
# Utworzenie pustego pliku lub aktualizacja jego czasu
touch nowy.txt
Okno terminala
# Aktualizacja tylko czasu dostępu
touch -a plik.txt
Okno terminala
# Ustawienie konkretnej daty i godziny
touch -t 202401011230.00 raport.txt
Okno terminala
# Skopiowanie czasu z innego pliku
touch -r wzorzec.txt kopia.txt

  • Jeśli plik nie istnieje, touch utworzy go pusty, chyba że użyto -c.
  • Domyślnie aktualizowane są oba czasy: atime i mtime.
  • Czas może być modyfikowany przez ustawienia montowania systemu plików (noatime, relatime).

Błąd / KomunikatPrzyczynaRozwiązanie
Permission deniedBrak uprawnień do pliku lub katalogu.Użyj sudo lub zmień prawa dostępu.
No such file or directoryŚcieżka katalogu nie istnieje.Sprawdź poprawność ścieżki.
Błędny format datyNiepoprawny zapis w opcji -t.Sprawdź format [[CC]YY]MMDDhhmm[.ss].