Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình Bash

Làm chủ lệnh touch Linux: Tạo file & Cập nhật timestamp với ví dụ thực tế

Lệnh touch trong Linux cập nhật timestamp trên file hoặc tạo file nếu chưa tồn tại. Xem ví dụ và trường hợp dùng bên dưới.

Nghe có vẻ vô dụng, nhưng thực tế hữu ích. Ví dụ, muốn tạo file rỗng my_file.txt, chỉ cần chạy:

touch my_file.txt

Dễ!

Cập nhật timestamp file cũng hữu ích.

Giả sử file favorite_tv.txt lưu tên show TV yêu thích hiện tại.

Show yêu thích 10 năm trước là The Flintstones, và vẫn là. Chưa đổi. Nhưng timestamp file cho thấy sửa 10 năm trước. Ai nhìn có thể nghĩ không còn yêu thích.

Chạy:

touch favourite_tv.txt

… nội dung file không đổi, nhưng ai xem timestamp thấy The Flintstones vẫn là yêu thích, vì timestamp modification mới.

Cú pháp touch

touch [TUY_CHON] file1 [file2 file3...]

Lưu ý:

  • Một hoặc nhiều đường dẫn file được cung cấp
  • Tùy chọn TUY_CHON tùy chọn – xem bảng dưới cho vài cái phổ biến
  • Mặc định, touch cập nhật cả access và modification time của file liệt kê

Tùy chọn

Tùy chọn Mô tả
-a Chỉ thay đổi access time
-c Không tạo file mới
-m Chỉ thay đổi modification time
-d DATE Dùng DATE thay thời gian hiện tại, DATE là chuỗi ngày/giờ parse được
-h Tác động lên symbolic link thay vì file tham chiếu

Xem thêm tùy chọn và chi tiết trong manual touch bằng lệnh:

man touch

Ví dụ touch

Tạo file mới hoặc cập nhật timestamp access và modification đã đề cập – dưới là ví dụ dùng tùy chọn trên.

Xác nhận thay đổi các ví dụ dưới, chạy:

stat 

Chỉ thay đổi Access Time

touch -a my_file.txt

Chỉ thay đổi Modification Time

touch -m my_file.txt

Đặt ngày/giờ cụ thể

touch -d '17 March 2021 10:26' my_file.txt

Symbolic Links

Mặc định, touch tác động lên file được tham chiếu bởi symbolic link chứ không phải link. Để đổi và cập nhật timestamp của link, dùng -h:

touch -h my_symbolic_link