Wiki Linkat

Scripts

De Wiki Linkat

(Diferència entre revisions)
(Redirecció)
Revisió actual (10:33, 29 ago 2013) (mostra codi font)
 
(Hi ha 4 revisions intermèdies)
Línia 12: Línia 12:
<pre>#!/bin/bash
<pre>#!/bin/bash
tar cvfj /var/backup.tar.bz2 /home/usuari
tar cvfj /var/backup.tar.bz2 /home/usuari
-
</pre>
+
</pre>  
== Redirecció<br>  ==
== Redirecció<br>  ==
Línia 30: Línia 30:
<pre>cat &lt; ls-l.txt
<pre>cat &lt; ls-l.txt
</pre>  
</pre>  
-
*Entrada estàndard de teclat<br>
+
*Redirigir la stdin del teclat cap al fitxer ''prova'' fins que s'introdueixi la paraula ''FI''<br>
-
 
+
<pre>cat &lt;&lt; FI &gt; prova
-
<br>  
+
</pre>
-
 
+
*Redirigir stderr cap a un fitxer i al dispusitiu nul (basura)<br>
*Redirigir stderr cap a un fitxer i al dispusitiu nul (basura)<br>
<pre>ls /kaka 2&gt; error.txt
<pre>ls /kaka 2&gt; error.txt
ls /kaka 2&gt; /dev/null</pre>  
ls /kaka 2&gt; /dev/null</pre>  
-
<br>  
+
*Redirigir la stdout al fitxer sortida.txt i la stderr al fitxer error.txt<br>
 +
<pre>ls -l /bin/bash /kaka &gt; salida.txt 2&gt; error.txt </pre>
 +
*Redirigir la stdout i la&nbsp;stderr al dispusitiu nul (basura)<br>
 +
<pre>ls -l /bin/bash /kaka &gt; /dev/null 2&gt;&amp;1
-
<br>  
+
</pre>  
 +
== <span dir="auto">Pipeline</span>  ==
 +
 
 +
<span dir="auto">Els pipelines serveixen per utilizar la sortida estàndard d'un programa com a entrada estàndard d'un altre.</span>
 +
 
 +
En l'exemple següent es llegeix el fitxer /etc/passwd i el programa ''egrep'' mostrar per pantalla només aquelles línies on es troba la paraula ''root.''
 +
<pre>cat /etc/passwd | egrep root </pre>
 +
== Variables  ==
 +
 
 +
Les variables es poden fer servir com en qualsevol altre llenguatge de programació. Una variable en Bash pot contenir caràcters, números o una cadena de caràcters.
 +
 
 +
<code><pre>#!/bin/bash
 +
CAD="Hola món"
 +
echo $CAD</pre></code> [[Category:Línia_d'ordres|Línia_d'ordres]]
[[Category:Línia_d'ordres]]
[[Category:Línia_d'ordres]]

Revisió actual

Un llenguatge script o llenguatge de scripting és un llenguatge de programació que controla aplicacions. Els scripts són executats directament des del seu codi font, que generalment són fitxers de text que contenen llenguatges de marcatge específics.

Contingut

Scripts simples

Tot seguit veureu dos scripts simples per entendre el funcionament dels scripts:

  • Aquest script mostra per pabtalla Hola món!
#!/bin/bash
echo "Hola món!"
  • Aquest altre script realitzaria una copia de seguretat del directori /home/usari al fitxer comprimit backup al directori /var
#!/bin/bash
tar cvfj /var/backup.tar.bz2 /home/usuari

Redirecció

  • entrada estàndard (stdin) 0
  • sortida estàndard (stdout) 1
  • error estàndard (stderr) 2


Exemples de redirecció

  • Redirigir stdout a un fitxer
ls -l > ls-l.txt
  • Entrada estàndard de fitxer
cat < ls-l.txt
  • Redirigir la stdin del teclat cap al fitxer prova fins que s'introdueixi la paraula FI
cat << FI > prova
  • Redirigir stderr cap a un fitxer i al dispusitiu nul (basura)
ls /kaka 2> error.txt
ls /kaka 2> /dev/null
  • Redirigir la stdout al fitxer sortida.txt i la stderr al fitxer error.txt
ls -l /bin/bash /kaka > salida.txt 2> error.txt 
  • Redirigir la stdout i la stderr al dispusitiu nul (basura)
ls -l /bin/bash /kaka > /dev/null 2>&1

Pipeline

Els pipelines serveixen per utilizar la sortida estàndard d'un programa com a entrada estàndard d'un altre.

En l'exemple següent es llegeix el fitxer /etc/passwd i el programa egrep mostrar per pantalla només aquelles línies on es troba la paraula root.

cat /etc/passwd | egrep root 

Variables

Les variables es poden fer servir com en qualsevol altre llenguatge de programació. Una variable en Bash pot contenir caràcters, números o una cadena de caràcters.

#!/bin/bash
CAD="Hola món"
echo $CAD