Puncte:0

Modificați variabilele de mediu $PATH implicite

drapel br

Vreau să schimb implicit CALE Variabilă în bash. De asemenea, știu că pot scrie export PATH=$PATH:/cale/la/comenzi dar nu e solutia mea. Vreau ca orice aplicație folosește apel de sistem, poate fi folosită o cale nouă.

De exemplu, în codul Python:

  • din sistemul de import OS
  • sistem('comanda-mea-specială')

comanda-me-specială a fost depozitat la /path/to/my/commands/dir/my-special-command

Puncte:2
drapel cn

EL CALE este definit la diferite niveluri ale sistemului. Procesele și subshell-urile moștenesc setarea din shell-ul părinte. Deci daca tu export o cale în terminal, modificarea va fi valabilă în shell-ul curent și orice subshell al acelui terminal.

Deși puteți adăuga o cale personalizată pentru fiecare executabil pe care doriți să îl plasați peste tot în sistemul dvs., această abordare va deveni rapid greoaie. Ar trebui să adăugați un director la PATH pentru orice altă aplicație pe care o instalați. Ar limita portabilitatea programului dvs.

Înainte de a indica modul în care PATH poate fi schimbat la un nivel superior, aș sugera să luăm în considerare alte abordări mai bune.

Plasați executabilul într-una dintre căile implicite

În schimb, rămâneți la abordarea convențională pentru aplicațiile dvs. personalizate, la fel cum întreținerii Ubuntu se limitează la unele conversii atunci când configurează aplicațiile care vin cu sistemul.

Pentru aplicațiile dvs. personalizate, asta înseamnă: instalați-le oriunde doriți. Apoi instalați un executabil într-unul dintre directoarele menționate în PATH.

Pentru programele dvs. personalizate, /usr/local/bin este locul convențional potrivit pentru a vă pune executabilul. Dacă aveți nevoie ca executabilul să fie disponibil pe bază de utilizator, plasați executabilul în ~/.local/bin in schimb. Părăsi /usr/bin la managementul managementului software-ului sistemului.

Executabilul poate fi un binar, o legătură simbolică către executabilul instalat în altă parte sau un script wrapper.

Codarea căii în executabilul dvs

În loc să vă bazați pe o setare PATH non-standard la nivel de sistem în programul dvs., definiți PATH-uri personalizate în executabilul dvs. unde puteți găsi resurse. Pentru a face acest lucru portabil, lucrați cu un director de bază, adică directorul în care este instalat programul și localizați resursele într-o structură de directoare de dedesubt. În timpul execuției, executabilul poate determina calea în care se află. Pune acea cale într-o variabilă, de ex. RUN_PATH, apoi localizați resursele folosind o cale relativă, de ex. imagini sub $RUN_PATHS/icoane etc.

Schimbați PATH la nivel de sistem

Dacă insisti să o faci în felul tău, simți-te liber. Este sistemul tău. Aceasta este o modalitate de a modificați variabila PATH la începutul procesului de pornire. După cum sa explicat mai înainte, această abordare este dificil și neelegant de portat. Dacă toată lumea ar decide să lucreze în felul tău, ar duce la o cale mare cu intrări personalizate în sistemul utilizatorului. O cale lungă încetinește găsirea și executarea oricărui executabil de pe sistem.

vanadium avatar
drapel cn
@bac0n bineînțeles că ai dreptate: mulțumesc pentru subliniere.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.