Computer >> Máy Tính >  >> Lập trình >> Lập trình BASH

Cách sử dụng Lệnh nào trong Linux, Với các ví dụ

Hướng dẫn này sẽ dạy bạn cách sử dụng which lệnh trong Linux với một số ví dụ đơn giản.

Cái nào lệnh sẽ cho bạn biết đường dẫn đến tệp thực thi được sử dụng bởi một lệnh trên hệ thống nếu nó tồn tại.

Tại sao điều này hữu ích? Giả sử bạn có hai bản sao của MySQL có thể thực thi được cài đặt trên hệ thống của bạn (được cài đặt thông qua các phương tiện khác nhau) và bạn muốn biết phương tiện nào đang thực sự được sử dụng để có thể xóa phương tiện kia - cái nào lệnh có thể cho bạn biết lệnh nào trong hai lệnh được gọi khi bạn thực thi MySQL trên dòng lệnh.

Linux có Cú pháp Lệnh nào

Lệnh cho which lệnh như sau:

which OPTIONS COMMAND

Lưu ý rằng:

  • TÙY CHỌN là danh sách tùy chọn tùy chọn từ bảng bên dưới có thể được sử dụng để thay đổi hành vi mặc định của which lệnh
  • LỆNH là tên của lệnh bạn muốn biết đường dẫn đến tệp thực thi cho
    • LỆNH phải được cung cấp hoặc cái nào sẽ không có gì để tìm kiếm!

Tùy chọn lệnh

Dưới đây là các tùy chọn được sử dụng phổ biến nhất có thể được chuyển cho which lệnh:

–all, -a In tất cả các tệp thực thi phù hợp trong PATH, không chỉ tệp đầu tiên.
–read-alias, -i Đọc các bí danh từ stdin, báo cáo các bí danh trùng khớp trên stdout. Điều này rất hữu ích khi kết hợp với việc sử dụng bí danh cho chính nó.
–skip-bí danh Bỏ qua tùy chọn –read-alias ’, nếu có. Điều này rất hữu ích để tìm kiếm các tệp nhị phân thông thường một cách rõ ràng, trong khi sử dụng tùy chọn –read-alias ’trong một bí danh hoặc hàm cho bí danh hoặc hàm.
–read-functions Đọc các định nghĩa hàm shell từ stdin, báo cáo các định nghĩa phù hợp trên stdout. Điều này rất hữu ích khi kết hợp với việc sử dụng một hàm shell cho chính nó.
–skip-functions Bỏ qua tùy chọn –read-functions ’, nếu có. Điều này rất hữu ích để tìm kiếm một cách rõ ràng các mã nhị phân bình thường, trong khi sử dụng tùy chọn –read-functions ’trong một bí danh hoặc hàm cho bí danh hoặc hàm.

Như mọi khi, bạn có thể xem hướng dẫn sử dụng đầy đủ cho cái nào lệnh bằng cách chạy:

man which

Ví dụ Lệnh nào

Dưới đây, chúng tôi tìm kiếm đường dẫn cho tệp thực thi, được gọi là khi nano được chạy từ thiết bị đầu cuối:

which nano

Điều này sẽ trả về một cái gì đó giống như sau nếu nano trình soạn thảo văn bản được cài đặt trên hệ thống của bạn:

/usr/bin/nano

Nếu nano không đã cài đặt, bạn sẽ thấy:

nano not found

Điều này làm cho cái nào lệnh hữu ích cho cả việc kiểm tra vị trí đặt tệp thực thi và gói có được cài đặt / khả dụng hay không.

Nhiều tên thực thi có thể được cung cấp nếu bạn muốn tra cứu nhiều lệnh cùng một lúc:

which cat less

Cái nào sẽ trở lại:

/bin/cat
/usr/bin/less

Mã trả lại

Nếu bạn đang sử dụng mã này trong Tập lệnh Shell, bạn có thể sử dụng mã trạng thái được trả về bởi lệnh để xác định xem có tìm thấy đường dẫn thực thi hay không:

0 Tất cả các lệnh được chỉ định đã được tìm thấy và có thể thực thi được.
1 Không tìm thấy một hoặc nhiều lệnh đã chỉ định hoặc không thể thực thi được.
2 Các tùy chọn hoặc cú pháp không hợp lệ đã được sử dụng.

Điều này có thể cực kỳ hữu ích nếu bạn muốn làm cho các tập lệnh shell của mình trở nên linh hoạt hơn - bạn có thể sử dụng which để kiểm tra xem một lệnh có sẵn hay không trước khi thực thi lệnh đó trong tập lệnh của bạn, để đảm bảo người dùng cuối không gặp bất kỳ lỗi nào nếu họ chưa cài đặt phần mềm cần thiết.