GNU/Linux >> Linux Esercitazione >  >> Linux

Come installo uno script da eseguire ovunque dalla riga di comando?

Procedura dettagliata per rendere disponibile ovunque uno script Python:

Crea uno script Python:

cd /home/el/bin
touch stuff.py
chmod +x stuff.py

Scopri dov'è il tuo pitone:

which python
/usr/bin/python

Inserisci questo codice:

#!/usr/bin/python
print "hi"

Esegui nella stessa directory:

python stuff.py

Sali in una directory e non è disponibile:

cd ..
stuff.py

-bash: stuff.py: command not found

Non trovato! È come previsto, aggiungi il percorso del file python a $PATH

vi ~/.bashrc

Aggiungi il file:

export PATH=$PATH:/home/el/bin

Salvalo, applica nuovamente il .bashrc e riprova

source ~/.bashrc

Riprova:

cd /home/el
stuff.py

Stampe:

hi

Il trucco è che la shell bash conosce la lingua del file tramite shebang.


Basta creare ~/bin e inserisci export PATH=$PATH:$HOME/bin nel tuo bashrc/profilo. Non scherzare con il sistema, lo farà morditi, fidati di me.

Poche altre cose (rilevanti per la domanda ma non parte della risposta):

  1. Al contrario export PATH=$HOME/bin:$PATH NON è sicuro, perché bash esaminerà il tuo ~/bin cartella per gli eseguibili e se il loro nome corrisponde ad altri eseguibili nel tuo $PATH originale rimarrai sorpreso dall'esecuzione di comandi inaspettati/non funzionanti.
  2. Non dimenticare di chmod+x quando salvi il tuo script in ~/bin .
  3. Sii consapevole di ciò che stai inserendo nel tuo ~/bin cartella, se stai solo testando qualcosa o lavorando su uno script non finito, è sempre meglio usare ./$SCRIPT_NAME dal tuo CWD per eseguire lo script piuttosto che metterlo sotto ~/bin .

Il posto migliore per mettere cose come questa è /usr/local/bin .

Questo è il posto normale dove mettere i binari installati personalizzati e dovrebbe essere all'inizio del tuo PATH .

Basta copiare lì lo script (probabilmente usando sudo ), e dovrebbe funzionare per qualsiasi utente.


Linux
  1. Come installare il software dalla riga di comando di Linux

  2. Come eseguire query MySQL/MariaDB direttamente dalla riga di comando di Linux

  3. Come posso eseguire una funzione da uno script nella riga di comando?

  4. Come posso eseguire il codice PHP dalla riga di comando?

  5. Come eseguire il comando Vim dalla shell?

Come utilizzare Ranger per la navigazione dei file dalla riga di comando

Come eseguire uno script Python in PHP

Googler:esegui ricerche su Google dalla riga di comando

Come disattivare l'audio dalla riga di comando?

Come installare Google Chrome su Ubuntu 18.04 utilizzando la riga di comando?

Come posso eseguire manualmente un controllo nagios dalla riga di comando?