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