Biến PATH
Thuộc phần Kiến thức cơ bản trong hành trình Terminal của Coddy. Bài học 61 trên 82.
Biến PATH là một trong những biến môi trường quan trọng nhất trong hệ thống của bạn. Nó cho shell biết cần tìm các chương trình có thể thực thi ở đâu khi bạn nhập một lệnh.
Khi bạn chạy một lệnh như ls hoặc cat, shell không tự biết các chương trình này được lưu ở đâu. Nó tìm kiếm trong danh sách thư mục được xác định trong PATH. Xem danh sách đó bằng lệnh:
echo $PATHBạn sẽ thấy nội dung tương tự như sau:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbinMỗi thư mục được phân tách bằng dấu hai chấm (:). Khi bạn gõ ls, shell kiểm tra lần lượt từng thư mục: đầu tiên là /usr/local/bin, tiếp theo là /usr/bin, rồi cứ thế cho đến khi tìm thấy chương trình ls.
Nếu chương trình không nằm trong thư mục nào trong số này, bạn sẽ gặp lỗi “command not found”. Vì vậy, việc hiểu PATH rất quan trọng.
Khi cài phần mềm mới hoặc tạo script của riêng mình, bạn cần đặt chúng trong thư mục có trong PATH, nếu không, bạn sẽ phải nhập toàn bộ đường dẫn để chạy chúng.
Bạn có thể tìm chính xác vị trí của một lệnh bằng which:
which lsĐường dẫn này cho biết đầy đủ vị trí của chương trình sẽ chạy khi bạn nhập lệnh đó.
Thử thách
DễDùng lệnh which để tìm đường dẫn đầy đủ đến chương trình cat.
Lệnh which tìm kiếm trong các thư mục được liệt kê trong biến PATH và cho bạn biết chính xác tệp thực thi của một lệnh nằm ở đâu.
Đầu ra của bạn phải hiển thị đường dẫn đầy đủ đến chương trình cat (chẳng hạn như /usr/bin/cat hoặc /bin/cat).
Gợi ý: Định dạng lệnh là
which command_name
Tự làm thử
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Kiến thức cơ bản
4Thư mục
Tạo thư mụcSao chép thư mụcDi chuyển và đổi tên thư mụcXóa thư mụcÔn tập: thao tác với thư mục2Điều hướng
In đường dẫn thư mục hiện tạiLiệt kê tệpChuyển thư mụcĐường dẫn tuyệt đối và tương đốiThư mục chính và thư mục gốcÔn tập: tìm đường8Chuyển hướng
Đầu ra chuẩnGhi đè vào tệpGhi thêm vào tệpĐầu vào chuẩnLỗi chuẩnÔn tập: Công cụ tạo nhật ký6Ký tự đại diện và mẫu
Ký tự đại diện dấu saoKý tự đại diện dấu hỏiKý tự đại diện trong ngoặc vuôngKết hợp ký tự đại diệnÔn tập: thao tác có chọn lọc9Đường ống
Đường ống là gìNối hai lệnh bằng đường ốngNối nhiều lệnh bằng đường ốngDùng đường ống với grepÔn tập: luồng xử lý dữ liệuTự luyện tập: Playground Terminal