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

Hiểu về './' (Dot Slash) trong Linux: Hướng dẫn rõ ràng

Trong Linux, *./ (dot slash) đại diện đường dẫn tương đối tới thư mục làm việc hiện tại. Bài viết giải thích chính xác ý nghĩa và cách dùng.

. (dot) và .. (double-dot)

. (single dot) và .. (double dot) là tên thư mục đặc biệt trong Linux (và *nix khác).

. đại diện thư mục hiện tại.

.. đại diện thư mục cha (của thư mục hiện tại).

./ (dot slash)

Vậy . trong ./ đại diện thư mục *hiện tại* – và dấu gạch chéo là phân cách đường dẫn để phần sau tham chiếu nội dung thư mục hiện tại.

Ví dụ

Để sửa hoặc tạo file test.txt trong thư mục hiện tại:

nano ./test.txt

Tương đương chạy;

nano test.txt

Vì lệnh mặc định chạy trong thư mục làm việc hiện tại.

Vậy tại sao thường thấy ./ khi chạy script và chương trình?

Chạy script dùng ./

./ dùng khi chạy chương trình/script để đảm bảo chương trình/script chạy nằm trong thư mục hiện tại thay vì lệnh trùng tên có thể tồn tại trên system path (ứng dụng cài trên hệ thống).

File có – ở đầu tên

Một trường hợp thường dùng ./ – làm việc với file có – làm ký tự đầu tên file.

Xét file -L.txt trong thư mục hiện tại. Nếu chạy:

nano -L.txt

…sẽ không sửa file mà nhận thông báo như:

nano: invalid option

…vì tên file bị hiểu nhầm thành command-line argument do dấu gạch ngang.

Vấn đề này khắc phục bằng:

nano ./-L.txt