Come creare ed eseguire script Bash Shell su Windows 10

Sommario:

Come creare ed eseguire script Bash Shell su Windows 10
Come creare ed eseguire script Bash Shell su Windows 10

Video: Come creare ed eseguire script Bash Shell su Windows 10

Video: Come creare ed eseguire script Bash Shell su Windows 10
Video: EM163 Formula Excel per estrarre i dati su fogli multipli (2 esempi) - YouTube 2024, Aprile
Anonim
Con l'arrivo della shell Bash di Windows 10, ora puoi creare ed eseguire script di shell Bash su Windows 10. Puoi anche incorporare i comandi di Bash in un file batch di Windows o in uno script di PowerShell.
Con l'arrivo della shell Bash di Windows 10, ora puoi creare ed eseguire script di shell Bash su Windows 10. Puoi anche incorporare i comandi di Bash in un file batch di Windows o in uno script di PowerShell.

Anche se sai cosa stai facendo, questo non è necessariamente così semplice come sembra. Windows e UNIX utilizzano caratteri di fine riga diversi e il file system di Windows è accessibile in una posizione diversa nell'ambiente Bash.

Come scrivere uno script Bash su Windows 10

Quando si scrivono script di shell su Windows, tenere presente che i sistemi Windows e UNIX come Linux utilizzano caratteri di "fine riga" diversi nei file di testo negli script di shell.

In altre parole, ciò significa che non è possibile scrivere semplicemente uno script di shell in Blocco note. Salva il file nel Blocco note e non verrà interpretato correttamente da Bash. Tuttavia, è possibile utilizzare editor di testo più avanzati, ad esempio, Notepad ++ consente di assegnare un file di caratteri di fine riga UNIX facendo clic su Modifica> Conversione EOL> Formato UNIX / OSX.

Tuttavia, è meglio scrivere semplicemente lo script della shell nell'ambiente Bash stesso. L'ambiente Bash basato su Ubuntu viene fornito con gli editor di testo vi e nano. L'editor vi è più potente, ma se non lo hai mai usato prima, potresti voler iniziare con nano. È più facile da usare se sei nuovo.
Tuttavia, è meglio scrivere semplicemente lo script della shell nell'ambiente Bash stesso. L'ambiente Bash basato su Ubuntu viene fornito con gli editor di testo vi e nano. L'editor vi è più potente, ma se non lo hai mai usato prima, potresti voler iniziare con nano. È più facile da usare se sei nuovo.

Ad esempio, per creare uno script bash in nano, devi eseguire il seguente comando in bash:

nano ~/myscript.sh

Questo aprirà l'editor di testo Nano puntato su un file chiamato "myscript.sh" nella home directory del tuo account utente. (Il carattere "~" rappresenta la tua home directory, quindi il percorso completo è /home/nomeutente/myscript.sh.)

Inizia lo script della shell con la linea:
Inizia lo script della shell con la linea:

#!/bin/bash

Inserisci i comandi che vuoi eseguire, ognuno sulla propria linea. Lo script eseguirà ogni comando a turno. Aggiungi un carattere "#" prima di una riga per trattarlo come un "commento", qualcosa che aiuta te e le altre persone a capire lo script ma che non viene eseguito come un comando. Per trucchi più avanzati, consulta una guida più dettagliata agli script di Bash su Linux. Le stesse tecniche funzioneranno in Bash su Ubuntu su Windows.

Nota che non c'è modo di eseguire programmi Windows dall'ambiente Bash. Sei limitato ai comandi e alle utility del terminale Linux, proprio come faresti con un tipico sistema Linux.

Ad esempio, usiamo semplicemente uno script base "ciao mondo" come esempio qui:

#!/bin/bash # set the STRING variable STRING='Hello World!' # print the contents of the variable on screen echo $STRING

Se stai usando l'editor di testo Nano, puoi salvare il file premendo Ctrl + O e quindi Invio. Chiudi l'editor premendo Ctrl + X.

Image
Image

Rendi eseguibile lo script e poi eseguilo

Probabilmente vorrai rendere lo script eseguibile in modo da poterlo eseguire più facilmente. Su Linux, ciò significa che è necessario fornire al file di script il permesso dell'eseguibile. Per fare ciò, esegui il seguente comando nel terminale, puntandolo verso il tuo script:

chmod +x ~/myscript.sh

Per eseguire lo script, ora puoi eseguirlo nel terminale digitandone il percorso. Ogni volta che si desidera avviare lo script in futuro, basta aprire la shell Bash e digitare il percorso dello script.
Per eseguire lo script, ora puoi eseguirlo nel terminale digitandone il percorso. Ogni volta che si desidera avviare lo script in futuro, basta aprire la shell Bash e digitare il percorso dello script.

~/myscript.sh

(Se lo script si trova nella directory corrente, è possibile eseguirlo con./myscript.sh)

Image
Image

Come lavorare con i file di Windows in uno script Bash

Per accedere ai file di Windows nello script, è necessario specificare il percorso in / mnt / c, non il percorso di Windows. Ad esempio, se si desidera specificare il file C: Users Bob Download test.txt, sarà necessario specificare il percorso /mnt/c/Users/Bob/Downloads/test.txt. Consulta la nostra guida per archiviare le posizioni nella shell Bash di Windows 10 per maggiori dettagli.

Come incorporare i comandi di Bash in uno script batch o PowerShell

Infine, se si dispone di un file batch esistente o di uno script PowerShell in cui si desidera incorporare comandi, è possibile eseguire i comandi di Bash direttamente utilizzando

bash -c

comando.

Ad esempio, per eseguire un comando Linux in una finestra del prompt dei comandi o di PowerShell, è possibile eseguire il seguente comando:

bash -c 'command'

Questo trucco consente di aggiungere comandi Bash in file batch o script PowerShell. La finestra della shell Bash verrà visualizzata quando è in esecuzione un comando di Bash.

Aggiornare: Se sono installati più ambienti Linux, è possibile utilizzare il comando wslconfig per scegliere l'ambiente Linux predefinito utilizzato quando si esegue il

bash -c

comando.

Image
Image

Per creare un collegamento a uno script Bash da Windows, è sufficiente creare una scorciatoia come normale. Per l'obiettivo della scorciatoia, usa il

bash -c

comando che abbiamo delineato sopra e puntalo sullo script Bash che hai creato.

Ad esempio, indicheresti una scorciatoia a"

bash -c '~/myscript.sh'

Per eseguire lo script di esempio sopra. È anche possibile eseguire questo comando anche da un prompt dei comandi o da una finestra di PowerShell.

Consigliato: