GNU/Linux >> Znalost Linux >  >> Linux

Kde je dobré trvalé místo pro instalaci vlastních bash skriptů?

Řešení 1:

(Poznámka:~ překládá se jako /home/user v tomto příspěvku)

Osobně jsem všechny své vlastní systémové skripty vložil do /usr/local/bin a všechny mé osobní bash skripty v ~/bin . Velmi málo programů, které nainstaluji, se umístí do /usr/local/bin adresář, takže to není moc nepřehledné a už to bylo v $PATH proměnná na většině mých počítačů.

Chcete-li přidat /usr/local/bin k vaší systémové cestě (pokud tam ještě není) přidejte toto do /etc/profile :

PATH=$PATH:/usr/local/bin
export PATH

Chcete-li přidat ~/bin k cestě vašeho uživatele přidejte toto do ~/.bash_profile :

PATH=$PATH:$HOME/bin
export PATH

Někdy výchozí .bash_profile soubor bude mít příkaz if, který automaticky přidá ~/bin na $PATH pokud existuje, tak vytvořte ~/bin a otevřete nový terminál, abyste zjistili, zda to ten váš již dělá.

Řešení 2:

/usr/local/ je opravdu to správné místo, zatímco /opt je opravdu pro aplikace třetích stran; "/opt je vyhrazen pro instalaci softwarových balíčků doplňkových aplikací." Toto je součástí standardu Filesystem Hierarchy Standard.

Viz http://www.pathname.com/fhs/pub/fhs-2.3.html pro diskuzi o /opt.

Pro /usr/local/ je to pro "použití správcem systému". Jen nezapomeňte na věci, které tam jsou – zdokumentujte to.

Řešení 3:

Historicky byste použili něco jako /opt. Vše je v pořádku, pokud je to aktualizováno v $PATH pro uživatele, kteří to mají mít (proto je cokoliv v /home špatný nápad).

Řešení 4:

/usr/share/clojure vypadá jako běžné místo pro umístění binárních souborů a knihoven clojure – proč to nevím, pro /usr/local/share/clojure se to zdá přirozené — takže vytvoření site podadresář pod tímto pro tyto bash skripty se zdá být v pořádku.

Obecným bodem je, že dává větší smysl organizovat skripty podle funkce, nemít všechny bash skripty na stejném místě.

Řešení 5:

/usr/local , Domnívám se, že význam slova „místní“ je poněkud zmaten.

Pokud tomu rozumím, „místní“ neznamená „pocházející z/z místního počítače“, ale jednodušeji „specifické pro místní počítač“, které může, ale nemusí pocházet z místního počítače.


Linux
  1. Spouštět Bash skripty při vstupu do adresáře?

  2. Použití příkazu Linux Basename ve skriptech Bash

  3. Spusťte všechny skripty prostředí ve složce

  1. Použití Bash pro automatizaci

  2. Zpracování chyb ve skriptech Bash

  3. Kam mám nainstalovat aplikaci v systému Linux?

  1. Použít rozšíření .sh nebo .bash pro skripty Bash?

  2. Sdílení proměnných ve více skriptech Shell?

  3. Kde je Mono Ide?