Cos'è uno script?

Copione

Internet è pieno di terminologia che può risultare confusionaria per chi non è un informatico. Alcuni di questi termini includono codice sorgente, script , snippet e così via. Il codice sorgente, in questo contesto, si riferisce a qualsiasi testo o informazione scritta utilizzando un linguaggio di programmazione e seguendo una sintassi specifica per creare un algoritmo o una funzione che andrà a costituire il programma.

Pertanto, "codice sorgente" è un termine più generico e ampio, che comprende anche gli altri termini, poiché uno snippet è un frammento di codice sorgente generalmente non molto complesso. Ad esempio, quando lavoriamo alla progettazione web o dobbiamo inserire un banner sul nostro sito web, i fornitori di annunci come Google AdSense o Amazon Affiliates di solito ci forniscono uno snippet con il codice HTML da inserire sul nostro sito. Quindi, non si tratta di un programma completo, ma piuttosto di piccoli frammenti di codice riutilizzabili.

Linguaggio interpretato vs linguaggio compilato:

Interpretato vs compilato

Se vi state chiedendo cos'è uno script , sappiate che in programmazione questo termine si riferisce al codice sorgente scritto in un linguaggio interpretato (quasi sempre). E qual è la differenza rispetto ai linguaggi di programmazione tradizionali compilati? Beh, a differenza di questi ultimi, il codice sorgente non viene compilato una sola volta e trasformato in un file binario. Richiede invece un interprete che funga da intermediario e, ogni volta che il programma viene eseguito, l'interprete deve tradurre il codice in modo che la macchina possa comprenderlo. In breve, i passaggi sarebbero:

7 CentOS
Articolo correlato:
Guida all'installazione di CentOS 7 passo dopo passo
  1. Scrivi il codice sorgente del programma utilizzando alcuni linguaggi di programmazione per la compilazione come C, BASIC, C ++, Ada, ALGOL, D, COBOL, GO, Fortran, G, Lisp, Pascal, Swift, Visual Basic, ecc. Il codice può essere scritto in qualsiasi editor di testo o utilizzando un ambiente di sviluppo o IDE più completo.
  2. Compiliamo il codice sorgente utilizzando alcuni compilatori, come GNU GCC. Con questo riusciamo a trasformare questi comandi in un linguaggio di alto livello che solo programmatori e compilatori capiscono in un linguaggio macchina o binario comprensibile o eseguibile dalla CPU.
  3. El binario può essere eseguito quante volte è necessario senza ripetere i passaggi precedenti. In effetti, la maggior parte dei fornitori di software ci invia il file binario direttamente per eseguirlo sul nostro computer. Sarà il sistema operativo a gestire i processi necessari per questo, syscalls, ecc.

D'altra parte, gli script non seguono questi passaggi e utilizzano linguaggi interpretati. Esistono molti linguaggi interpretati , come quello utilizzato nell'interprete Bash, che è il più diffuso in GNU/Linux e altri sistemi Unix, così come linguaggi ben noti come Perl, Python, Ruby, JavaScript, ecc. Con questi, è possibile scrivere il codice che andrà a comporre lo script, che è semplicemente un file di comandi o un file batch. Ovviamente, la sintassi varierà a seconda del linguaggio utilizzato. Nel caso di un linguaggio interpretato, l'ordine cambierebbe in:

  1. Scriviamo lo script o il codice sorgente utilizzando qualsiasi linguaggio di programmazione. Possiamo anche usare un IDE o solo un editor di testo.
  2. In questo caso, non viene compilato, ma può essere eseguito direttamente con l'aiuto dell'interprete. Cioè, se usiamo Bash, abbiamo bisogno che sia installato sul sistema per poter eseguire il nostro script. Se usiamo uno script Python, abbiamo bisogno dell'interprete Python installato, ecc.
  3. Quando eseguiamo lo script, Sarà l'interprete che interpreta le parole o la lingua che contiene (da cui il nome), cioè quelle istruzioni non passano direttamente al sistema operativo e alla CPU, poiché non le riconoscerebbe senza l'aiuto dell'intermediario o traduttore che è l'interprete.

Detto questo, vediamo che entrambi i casi presentano vantaggi e svantaggi . I file compilati non richiedono la compilazione a runtime; pertanto, una volta compilati la prima volta, possiamo eseguire il binario tutte le volte che vogliamo senza sprecare risorse. Questo non accade con gli script, che devono anche allocare risorse all'interprete e quindi generalmente risultano più lenti.

Creazione del nostro primo script su Linux:

Logo Bash

Nel nostro esempio, useremo Bash come linguaggio di programmazione interpretato e quindi il nostro interprete sarà Bash. Innanzitutto, è importante sapere che molti file di script hanno delle intestazioni chiamate shebang, che variano a seconda dell'interprete utilizzato. Ad esempio, in Linux, possiamo trovare diversi interpreti. Nel caso di Bash, lo shebang è #!/bin/bash, ma in qualsiasi altro caso, sarà il binario che punta all'interprete, o shell in questo caso. Inoltre, nel caso di Unix e Linux, il file di script ha solitamente l'estensione .sh.

Pendrive USB avviabile Linux
Articolo correlato:
Come creare un USB avviabile dal terminale in qualsiasi distribuzione

Nello script possiamo utilizzare comandi dell'interprete, operandi, costanti, ecc. Ad esempio, possiamo creare un semplice script per eseguire il backup del nostro sistema e creare un file di registro con la data, creando un file chiamato backup.sh con il nostro editor di testo preferito. Il suo contenuto sarà:

<div>

<pre><span class="com">#<span class="simbol">!</span>/bin/bash
</span></pre>
<pre>tar cvf /backup/copia<span class="simbol">.</span>tar /home/usuario</pre>
<pre>date <span class="simbol">></span> /backup/log_copia</pre>
</div>

Ad esempio, nell'esempio precedente, verrà creato un backup della directory /home/user e verrà impacchettato in un file tarball chiamato copy.tar, quindi verrà scritto un registro delle date . Per eseguirlo, dovremo concedergli i permessi di esecuzione, ad esempio:

chmod +x backup.sh

./backup.sh

Un semplice esempio che credo chiarirà ai principianti cos'è uno script. È una domanda che ricorre piuttosto frequentemente ultimamente...


Aggiungi come fonte preferita in Google