Điểm:0

Thay đổi các biến môi trường $PATH mặc định

lá cờ br

Tôi muốn thay đổi mặc định CON ĐƯỜNG Biến trong bash. Ngoài ra, tôi biết có thể viết xuất PATH=$PATH:/path/to/commands nhưng nó không phải là giải pháp của tôi. Tôi muốn bất kỳ ứng dụng nào sử dụng cuộc gọi hệ thống, có thể sử dụng đường dẫn mới.

Ví dụ trong mã python:

  • từ hệ thống nhập os
  • hệ thống ('lệnh đặc biệt của tôi')

my-special-lệnh đã được lưu trữ tại /path/to/my/commands/dir/my-special-command

Điểm:2
lá cờ cn

Các CON ĐƯỜNG được xác định ở các cấp độ khác nhau của hệ thống. Các quy trình và lớp con kế thừa cài đặt từ lớp vỏ mẹ. Vì vậy, nếu bạn xuất khẩu một đường dẫn trong thiết bị đầu cuối, thay đổi sẽ có hiệu lực trong trình bao hiện tại và bất kỳ trình bao con nào của thiết bị đầu cuối đó.

Mặc dù bạn có thể thêm một đường dẫn tùy chỉnh cho mọi tệp thực thi mà bạn muốn đặt ở mọi nơi trên hệ thống của mình, phương pháp này sẽ nhanh chóng trở nên khó sử dụng. Bạn sẽ cần thêm một thư mục vào PATH cho bất kỳ ứng dụng nào khác mà bạn cài đặt. Nó sẽ hạn chế tính di động của chương trình của bạn.

Trước khi chúng tôi chỉ ra cách PATH có thể được thay đổi ở cấp độ cao hơn, tôi khuyên bạn nên xem xét các cách tiếp cận khác tốt hơn.

Đặt tệp thực thi của bạn vào một trong những đường dẫn mặc định

Thay vào đó, hãy sử dụng cách tiếp cận thông thường cho các ứng dụng tùy chỉnh của bạn, giống như những người bảo trì Ubuntu tuân theo một số chuyển đổi khi định cấu hình các ứng dụng đi kèm với hệ thống.

Đối với các ứng dụng tùy chỉnh của bạn, điều đó có nghĩa là: cài đặt chúng ở bất cứ đâu bạn muốn. Sau đó cài đặt tệp thực thi vào một trong các thư mục được đề cập trong PATH.

Đối với các chương trình tùy chỉnh của bạn, /usr/local/bin là những nơi thông thường thích hợp để đặt tệp thực thi của bạn. Nếu bạn cần tệp thực thi có sẵn trên cơ sở mỗi người dùng, hãy đặt tệp thực thi vào ~/.local/bin thay thế. Rời khỏi /usr/bin để quản lý của hệ thống phần mềm quản lý.

Tệp thực thi có thể là tệp nhị phân, liên kết tượng trưng đến tệp thực thi được cài đặt ở nơi khác hoặc tập lệnh bao bọc.

Mã hóa đường dẫn trong tệp thực thi của bạn

Thay vì dựa vào cài đặt PATH trên toàn hệ thống không chuẩn trong chương trình của bạn, hãy xác định PATHS tùy chỉnh trong chính tệp thực thi của bạn để tìm tài nguyên. Để làm cho điều này di động, hãy làm việc với một thư mục cơ sở, tức là thư mục nơi chương trình được cài đặt và định vị tài nguyên của bạn trong cấu trúc thư mục bên dưới. Khi chạy, tệp thực thi có thể xác định đường dẫn nơi nó cư trú. Đặt đường dẫn đó vào một biến, ví dụ: RUN_PATH, sau đó xác định vị trí tài nguyên của bạn bằng đường dẫn tương đối, ví dụ: hình ảnh dưới $RUN_PATHS/biểu tượng, v.v.

Thay đổi PATH toàn hệ thống

Nếu bạn khăng khăng làm theo cách của mình, hãy thoải mái. Nó là hệ thống của bạn. Đây là một cách để thay đổi biến PATH sớm trong quá trình khởi động. Như đã giải thích trước đây, cách tiếp cận này rất khó và không trang nhã đối với cổng. Nếu mọi người quyết định làm việc theo cách của bạn, nó sẽ dẫn đến một PATH lớn với các mục nhập tùy chỉnh trên hệ thống của người dùng. Đường dẫn dài làm chậm quá trình tìm và thực thi bất kỳ tệp thực thi nào trên hệ thống.

vanadium avatar
lá cờ cn
@bac0n tất nhiên là bạn đúng: cảm ơn vì đã chỉ ra.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.