Manual de bash

De doc.ubuntu-es
(Diferencias entre revisiones)
Saltar a: navegación, buscar
Línea 22: Línea 22:
 
[[ Terminal | Vea ésto antes de seguir ]]
 
[[ Terminal | Vea ésto antes de seguir ]]
  
 +
=== Autocompletado de órdenes y rutas ===
 +
 +
Bash nos da muchas facilidades de uso. Por ejemplo, podemos autocompletar órdenes o rutas.
 +
 +
Si quisiéramos que bash autocompletara una ruta, (por ejemplo /usr/lib/jvm/sun-java6) bastaría con empezar a escribirla e ir presionando la tecla tabulador de forma que: (-> equivale a tabulador)
 +
 +
Si hay más de una coincidencia, bash no autocompleta, si no que espera a que pulsemos de nuevo tabulador (->->) para mostrar todas las posibilidades.
 +
 +
<pre>
 +
$/us->
 +
$/usr/l->->
 +
/lib /local
 +
$/usr/li->
 +
$/usr/lib->->
 +
consolekit/        i686/              pcmciautils/      sudo/
 +
dbus-1.0/          initramfs-tools/  perl/              tasksel/
 +
dpkg/              jvm/              perl5/            tc/
 +
</pre>
 +
 +
Lo mismo ocurre con los comandos. Si queremos ejecutar, por ejemplo depkg-reconfigure: (imaginemos que no recordamos cómo se escribe)
 +
 +
<pre>
 +
$dpkg->->
 +
dpkg                dpkg-gencontrol      dpkg-scansources
 +
dpkg-architecture    dpkg-gensymbols      dpkg-shlibdeps
 +
dpkg-buildpackage    dpkg-name            dpkg-source
 +
dpkg-checkbuilddeps  dpkg-parsechangelog  dpkg-split
 +
dpkg-deb            dpkg-preconfigure    dpkg-statoverride
 +
dpkg-distaddfile    dpkg-query          dpkg-trigger
 +
dpkg-divert          dpkg-reconfigure   
 +
dpkg-genchanges      dpkg-scanpackages   
 +
$dpkg-rec->
 +
$dpkg-reconfigure
 +
</pre>
 +
 +
=== Búsqueda de Comandos Ejecutados ===
 +
 +
Si queremos recuperar un comando ya ejecutado, podemos usar la flecha arriba para ir navegando por los comandos que ya hemos introducido. Si queremos buscar uno concreto y que además nos lo autocomplete, podemos pulsar control+r y empezar a escribir hasta que lo encuentre, entonces pulsaremos enter para introducirlo.
 +
 +
<pre>
 +
$^R
 +
$(reverse-i-search)`su': sudo aptitude install links
 +
</pre>
 +
 +
'su' Es la parte que hemos escrito y lo siguiente a los dos puntos lo que ha encontrado.
  
 
== Comandos u Órdenes ==
 
== Comandos u Órdenes ==
Línea 27: Línea 72:
 
La lista de comandos que podemos usar es bastante extensa, hay comandos para todas las tareas que podamos imaginar, algunos más conocidos que otros. Aquí hay una lista de comandos con sus argumentos más comunes:
 
La lista de comandos que podemos usar es bastante extensa, hay comandos para todas las tareas que podamos imaginar, algunos más conocidos que otros. Aquí hay una lista de comandos con sus argumentos más comunes:
  
[[ Comandos | Vea ésto antes de continuar ]]
+
[[ Comandos_de_uso_frecuente | Vea ésto antes de continuar ]]
  
 
= Scripts =
 
= Scripts =

Revisión de 14:20 16 oct 2008

Contenido

Introducción

bash es un shell de Unix (intérprete de órdenes de Unix) escrito para el proyecto GNU. Su nombre es un acrónimo de bourne-again shell (otro shell bourne) — haciendo un juego de palabras (born-again significa renacimiento) sobre el Bourne shell (sh), que fue uno de los primeros intérpretes importantes de Unix. Hacia 1978 el intérprete Bourne era el intérprete distribuido con el Unix Version 7. Stephen Bourne, por entonces investigador de los Laboratorios Bell, escribió el intérprete Bourne original . Brian Fox escribió el intérprete bash en 1987. En 1990, Chet Ramey se convirtió en su principal desarrollador. bash es el intérprete predeterminado en la mayoría de sistemas GNU/Linux, además de Mac OS X Tiger, y puede ejecutarse en la mayoría de los sistemas operativos tipo Unix. También se ha llevado a Microsoft Windows por el proyecto Cygwin.

Conecptos Básicos

Para abrir una sesión de bash, lo más fácil es abrir una terminal. En GNOME está en el menú: Aplicaciones->Accesorios->Terminal. Lo que tendremos delante, se llama prompt. Se trata de una línea compuesta por el nombre de usuario "@" nombre de la máquina y un carácter separador. El separador será "$" si somos un usuario normal o "#" si somos root.


Introduciendo Órdenes

Para introducir una órden o comando, nada más fácil que teclear el nombre de la órden y presionar enter. La mayoría de las órdenes o comandos acepta parámetros. Para introducir un parámetro lo haremos a continuación de la órden o comando. por ejemplo, para introducir la órden ls:

Sin Parámetros:

juan@portatil$ ls 

Con Parámetros:

juan@portátil$ ls -la 

Vea ésto antes de seguir

Autocompletado de órdenes y rutas

Bash nos da muchas facilidades de uso. Por ejemplo, podemos autocompletar órdenes o rutas.

Si quisiéramos que bash autocompletara una ruta, (por ejemplo /usr/lib/jvm/sun-java6) bastaría con empezar a escribirla e ir presionando la tecla tabulador de forma que: (-> equivale a tabulador)

Si hay más de una coincidencia, bash no autocompleta, si no que espera a que pulsemos de nuevo tabulador (->->) para mostrar todas las posibilidades.

$/us->
$/usr/l->->
/lib /local
$/usr/li->
$/usr/lib->->
consolekit/        i686/              pcmciautils/       sudo/
dbus-1.0/          initramfs-tools/   perl/              tasksel/
dpkg/              jvm/               perl5/             tc/

Lo mismo ocurre con los comandos. Si queremos ejecutar, por ejemplo depkg-reconfigure: (imaginemos que no recordamos cómo se escribe)

$dpkg->->
dpkg                 dpkg-gencontrol      dpkg-scansources
dpkg-architecture    dpkg-gensymbols      dpkg-shlibdeps
dpkg-buildpackage    dpkg-name            dpkg-source
dpkg-checkbuilddeps  dpkg-parsechangelog  dpkg-split
dpkg-deb             dpkg-preconfigure    dpkg-statoverride
dpkg-distaddfile     dpkg-query           dpkg-trigger
dpkg-divert          dpkg-reconfigure     
dpkg-genchanges      dpkg-scanpackages    
$dpkg-rec->
$dpkg-reconfigure

Búsqueda de Comandos Ejecutados

Si queremos recuperar un comando ya ejecutado, podemos usar la flecha arriba para ir navegando por los comandos que ya hemos introducido. Si queremos buscar uno concreto y que además nos lo autocomplete, podemos pulsar control+r y empezar a escribir hasta que lo encuentre, entonces pulsaremos enter para introducirlo.

$^R
$(reverse-i-search)`su': sudo aptitude install links

'su' Es la parte que hemos escrito y lo siguiente a los dos puntos lo que ha encontrado.

Comandos u Órdenes

La lista de comandos que podemos usar es bastante extensa, hay comandos para todas las tareas que podamos imaginar, algunos más conocidos que otros. Aquí hay una lista de comandos con sus argumentos más comunes:

Vea ésto antes de continuar

Scripts

Variables

Arrays

Condicionales

Introducción a Test

Evaluación If-Then


#!/bin/bash

echo "Introduce tu Edad"
read edad

if [[ $edad -gt 18 ]]
then
    echo "Eres Mayor de Edad"
else
    echo -e "Eres Menor de Edad\c"
    if test  $edad -lt 18  -a  $edad -gt 13 
    then
        echo " y estás en plena edad del pavo.. brrrlll"
    fi
fi

Bucles

While

For

Until

Operadores

Funciones

Herramientas personales