GNU/Linux >> Linux Esercitazione >  >> Linux

Linee guida per l'esecuzione di script Shell per i principianti

Domanda :Quali sono le cose fondamentali di base che dovrei sapere per eseguire uno script di shell? Inoltre, quando eseguo il mio script di shell, viene visualizzato il messaggio di errore "Autorizzazione negata". Come lo risolvo?

Rispondi :Esaminiamo le 4 cose fondamentali di base che dovresti sapere sull'esecuzione di uno script di shell.

1. Individua l'eseguibile della shell e assegnalo come she-bang #!

Identifica il percorso completo in cui è installata la shell.

$ which sh
/bin/sh

(or)

$ which ksh
$ which bash

Dopo aver identificato la posizione dell'eseguibile della shell, scrivilo come shebang ( #! ) nella prima riga del file di script della shell.

$ vim helloworld.sh

#!/bin/sh
echo "Hello World!"

2. Assegna l'autorizzazione di esecuzione al file di script della shell

Se non disponi dell'autorizzazione di esecuzione per lo script, riceverai il messaggio di errore "Autorizzazione negata" come mostrato di seguito.

$ ./helloworld.sh
bash: ./helloworld.sh: Permission denied

Assegna il permesso di esecuzione al file di script usando il comando chmod come mostrato di seguito.

$ chmod u+x helloworld.sh

Se vuoi concedere l'autorizzazione di esecuzione al gruppo e ad altri, fallo come mostrato di seguito.

$ chmod 755 helloworld.sh

Nota: Puoi anche farlo come un processo automatico. vale a dire ogni volta che apri un file di script della shell, entrambe le cose richieste, l'aggiunta di shebang e l'autorizzazione di esecuzione possono essere eseguite automaticamente utilizzando il plug-in bash-support.vim. Fare riferimento al nostro precedente articolo Rendi Vim come il tuo Bash-IDE usando il plug-in bash-support per maggiori dettagli.

3. Esegui lo script specificando il percorso assoluto o relativo

Puoi eseguire uno script di shell usando il percorso assoluto o il percorso relativo.

Esegui lo script specificando il percorso assoluto come mostrato di seguito.

$ /home/ramesh/scripts/helloworld.sh
Hello World!

Esecuzione dello script specificando il relativo percorso come mostrato di seguito.

$ cd /home/ramesh/

$ ./scripts/helloworld.sh
Hello World!

(or)

$ cd /home/ramesh/scripts

$ ./helloworld.sh
Hello World!

4. Eseguire lo script proprio come un normale comando Linux

È inoltre possibile eseguire uno script senza specificare il percorso completo, il percorso assoluto o il percorso relativo. Per fare ciò, aggiungi la directory in cui si trova tutto lo script della shell alla variabile di ambiente PATH come mostrato di seguito.

Ad esempio, una volta aggiunto /home/ramesh/scripts alla variabile di ambiente PATH, posso eseguire lo script da qualsiasi directory.

$ export PATH=$PATH:/home/ramesh/scripts

$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/ramesh/scripts

$ cd /go/to/anydirectory

$ helloworld.sh
Hello World!

Linux
  1. convenzione di denominazione per script di shell e makefile

  2. Script bash:utilizzo del comando script da uno script bash per la registrazione di una sessione

  3. Script di shell Linux per il backup del database

  4. A partire da Loop dal secondo elemento - script Shell

  5. Script di traslitterazione per shell linux

Determinare la shell nello script durante il runtime?

Script Shell per spostare i file più vecchi?

Determinazione del percorso per lo script della shell di origine?

Stampa il tempo di esecuzione dello script della shell in Linux

Sistema operativo Zorin per principianti Linux

Itera sulle righe anziché sulle parole in un ciclo for dello script di shell