  Cmo pasar de DOS/Windows a Linux
  Por Guido Gonzato BORRAMEguido@ibogeo.df.unibo.it (Elimine
  el BORRAME)
  Traducido por David Marn Carreo, davefx@bigfoot.com
  v1.3.2 22 de Febrero de 1999. Traduccin: 8 de Junio de
  1999.

  Este documento Cmo est dedicado a todos los (pronto ex-)usuarios de
  DOS y Windows que acaban de decidir pasarse a Linux, el clnico gratu
  ito de UNIX. El propsito de este documento es ayudar al lector a
  trasladar su conocimiento de DOS y Windows al entorno Linux, as como
  dar indicaciones acerca de intercambiar archivos y recursos entre
  ambos sistemas operativos.
  ______________________________________________________________________

  ndice General:

  1.      Introduccin

  1.1.    Es Linux adecuado para usted?

  1.2.    Ya est. Ahora cunteme ms.

  1.2.1.  Conceptos introductorios

  1.2.2.  Obtencin de ayuda

  1.3.    Convenciones

  2.      Para el Impaciente

  3.      Encontrndose con bash

  4.      Ficheros y Programas

  4.1.    Ficheros: Nociones preliminares

  4.2.    Enlaces simblicos

  4.3.    Permisos y Propiedades

  4.4.    Ficheros: rdenes equivalentes

  4.5.    Ejecucin de programas: Multitarea y Sesiones

  4.6.    Ejecucin de programas en sistemas remotos

  5.      Gestin de Directorios

  5.1.    Directorios: Nociones preliminares

  5.2.    Permisos de directorios.

  5.3.    Equivalencia de rdenes

  6.      Disquetes, discos duros y similares.

  6.1.    Administracin de dispositivos en modo DOS

  6.2.    Administracin de dispositivos en modo UNIX

  6.3.    Copias de seguridad

  7.      Qu pasa con Windows?

  8.      Personalizacin del sistema

  8.1.    Ficheros de inicializacin del sistema

  9.      Ficheros de inicializacin de programas

  10.     Trabajo en red: conceptos

  11.     Un poco de programacin

  11.1.   Rutinas del Intrprete de Comandos: Ficheros .BAT con
  esteroides

  11.2.   Sus programas en C

  12.     El restante 1%

  12.1.   Utilizacin de tar  y gzip

  12.2.   Instalacin de aplicaciones

  12.3.   Trucos imprescindibles

  12.4.   Dnde encontrar aplicaciones?

  12.5.   Unas cuantas cosas que Usted no poda hacer

  12.6.   Practicando UNIX bajo DOS/Windows

  12.7.   Extensiones comunes y programas relacionados

  12.8.   Conversin de ficheros

  12.9.   Entornos ofimticos gratuitos

  13.     Fin, por ahora

  13.1.   Copyright

  13.2.   Agradecimientos

  13.3.   Traduccin

  14.     Anexo: El INSFLUG
  ______________________________________________________________________

  1.  Introduccin

  1.1.  Es Linux adecuado para usted?

  Quiere pasar del mundo DOS (esta definicin incluye Windows) a Linux?
  Buena idea: Linux es tcnicamente superior a DOS, Windows 95 e incluso
  Windows NT. Pero cuidado: puede no ser til para usted. Estas son las
  diferencias principales entre DOS y Linux:

    Windows ejecuta Microsoft Office y muchos juegos; est claro que es
     fcil de instalar y configurar; es notablemente inestable; su
     rendimiento es pobre; los bloqueos del ordenador son frecuentes.

    Linux ejecuta StarOffice, mucho software tcnico y unos pocos
     juegos; puede ser difcil de instalar y configurar; es slido como
     una roca; rinde al mximo; los bloqueos de la mquina son muy
     raros.

  De usted depende el decidir qu necesita. Linux le da potencia, pero
  lleva algn tiempo aprender a aprovecharla. Es decir, si necesita
  software comercial, o si no le apetece aprender rdenes y conceptos
  nuevos, sera mejor que buscara en otra parte. Sepa que muchos novatos
  lo dejan debido a las dificultades iniciales.

  Se est trabajando para hacer Linux ms facil de usar, pero no espere
  ser un experto en Linux a menos que lea mucha documentacin y lo use
  durante al menos unos meses. Linux no le dar resultados instantneos.
  A pesar de estas advertencias, tengo un 100% de seguridad en que si
  usted es el usuario correcto, entonces encontrar en Linux su Nirvana
  informtico. Por cierto, Linux + DOS/Win pueden coexistir sin
  problemas en la misma mquina.

  Requisitos previos para la lectura de este Cmo. Asumir que:

    conoce las rdenes y conceptos bsicos del DOS;

    Linux, posiblemente con el sistema X Window (X11 para abreviar),
     est adecuadamente instalado en su ordenador;

    su intrprete de rdenes (el equivalente de COMMAND.COM) es bash;

  A menos que se especifique lo contrario, toda la informacin de este
  trabajo est dirigida al antiguo DOS. Hay informacin acerca de
  Windows en algunos lugares de este documento, pero tenga en cuenta que
  Windows y Linux son completamente distintos, al contrario que DOS, que
  es una especie de hermano pobre de UNIX.

  Dese cuenta tambin de que este trabajo no es ni una gua de
  configuracin ni un manual completo para los no iniciados.

  La ltima versin de este documento est disponible en muchos formatos
  en ftp://sunsite.unc.edu/pub/Linux/docs/howto.

  1.2.  Ya est. Ahora cunteme ms.

  Ha instalado Linux y los programas que necesita en su ordenador. Se ha
  proporcionado una cuenta (si no, teclee adduser suNombre ahora
  mismo!) y Linux est ejecutndose. Acaba de introducir su nombre y su
  contrasea, y ahora est mirando a la pantalla pensando...  Y ahora
  qu?

  Bien, no se desespere. Puede hacer casi las mismas cosas que sola
  hacer con DOS/Win, y muchas ms. Si estuviera ejecutando DOS/Win en
  lugar de Linux, realizara alguna de las siguientes tareas:

    ejecutar programas y crear, copiar, ver, borrar, imprimir,
     renombrar ficheros;

    cambiar de directorio, crearlos, borrarlos y listar sus contenidos;

    formatear disquetes y copiar ficheros de/hacia ellos;

    configuracin del sistema;

    navegar por Internet;

    escribir ficheros .BAT y programas en su lenguaje favorito;

    el restante 1%.

  Estar contento al saber que todas esas tareas pueden llevarse a cabo
  bajo Linux de una manera similar a como se hacen bajo DOS. Bajo DOS,
  el usuario medio usa muy pocos de las ms de 100 rdenes disponibles:
  lo mismo, hasta cierto punto, sucede con el Linux.

  1.2.1.  Conceptos introductorios

  La mejor manera de aprender algo es mojndose los pies. Desde aqu le
  animo a experimentar y jugar con Linux: a menos que entre como
  usuario root, no puede llegar a daar el sistema de esa manera. Unos
  cuantos conceptos:

    Primero, cmo salir de Linux de manera segura. Si ve una pantalla
     en modo texto, pulse <Ctrl-Alt-Supr>, espere a que el sistema
     realice unas tareas y le diga que todo est bien, y entonces apague
     el ordenador.  Si est trabajando bajo el sistema X Window, pulse
     primero <Ctrl-Alt-Retroceder>, y despus <Ctrl-Alt-Supr>. Nunca
     apague o reinicie el ordenador directamente: podra daar el
     sistema de ficheros;

    Al contrario que en DOS o Windows, Linux tiene mecanismos de
     seguridad intrnsecos, debido a su naturaleza multiusuario. Los
     ficheros y los directorios tienen permisos asociados, y por lo
     tanto el usuario normal puede no tener acceso a alguno de ellos;
     vea la seccin ``Permisos''. DOS y Windows, por el contrario, le
     dejaran machacar todo el contenido de su disco duro;

    Hay un usuario especial denominado root: el administrador del
     sistema, que tiene todo el poder sobre la mquina. Si usted trabaja
     con su propio PC, tambin ser root. Trabajar como root es
     peligroso: cualquier error puede daar seriamente o destruir el
     sistema de la misma manera que con DOS/Win. No trabaje como root a
     menos que sea absolutamente necesario;

    Mucha de la complejidad de Linux viene de su extrema
     configurabilidad: prcticamente cada caracterstica y aplicacin
     puede ser configurada mediante uno o ms archivos de configuracin.
     La complejidad es el precio a pagar por la potencia;

    La redireccin y el entubamiento (piping) son caractersticas
     secundarias de DOS. En Linux pasan a ser muy importantes y mucho
     ms potentes. Se pueden enlazar rdenes para ejecutar tareas
     complejas.  Le recomiendo sobremanera que aprenda a usarlas.

  1.2.2.  Obtencin de ayuda

  Hay muchas maneras de conseguir ayuda con Linux. Las ms importantes
  son:

    Leyendo la documentacin Aunque el documento CMO que est leyendo
     puede servir como introduccin a Linux, hay unos cuantos libros que
     debera leer: Linux: Instalacin y Primeros Pasos de Matt Welsh
     (http://sunsite.unc.edu/mdw/LDP/gs/gs.html), la Gua del Usuario de
     Linux de Larry Greenfield
     (http://sunsite.unc.edu/pub/Linux/docs/linux-doc-project/users-
     guide), y la lista PUF de Linux (respuestas a Preguntas de Uso
     Frecuente) (http://sunsite.unc.edu/mdw/FAQ/Linux-FAQ.html.  Todos
     ellos pueden conseguirse en http://lucas.hispalinux.es en su
     versin traducida. Mantenga un sentimiento de culpabilidad hasta
     haber ledo al menos uno de ellos;

    La documentacion de los paquetes instalados en la mquina puede
     encontrarse usualmente en los directorios bajo /usr/doc/;

    Para conseguir ayuda acerca de las rdenes internas del
     intrprete de rdenes, teclee help o, mejor, man bash o info bash;

    Para conseguir ayuda acerca de una orden, teclee man orden, lo cual
     invoca a la pgina del manual (man) correspondiente a orden.
     Alternativamente, teclee info orden, lo cual mostrar la pgina
     info relativa a orden. info es un sistema de documentacion basado
     en hipertexto. Quiz no es intuitivo en un principio. Finalmente,
     puede intentar con apropos orden o whatis orden. Con todas estas
     rdenes, pulse 'q' para salir.

    Finalmente, en Internet: el lugar ms adecuado para conseguir ayuda
     es Usenet, en el foro news:comp.os.linux.setup. Por favor, no me
     enve mensajes solicitando ayuda, porque tengo bastante trabajo.

  1.3.  Convenciones

  A lo largo de este documento, los ejemplos seguirn el siguiente
  formato: <...> significa algo que debe ser especificado, mientras que
  [...] es algo opcional. Ejemplo:

       $ tar -tf <fichero.tar> [> fichero_redir]

  Debe indicar fichero.tar, pero la redireccin a fichero_redir es
  opcional.

  Desde ahora LPM significa para ms informacin Lea las Pginas del
  Manual.  No puedo dejar de recordar lo importante que es leer la
  documentacin. DosWin significa DOS/Windows.

  Cuando el simbolo de la lnea de rdenes en un ejemplo sea '#', la
  orden solo puede ser ejecutada por el root.

  2.  Para el Impaciente

  Quiere empezar ya? Eche un vistazo a esta tabla:

  DOS                     Linux                          Notas
  ------------------------------------------------------------------------------

  ATTRIB (+-)attr fich    chmod <modo> fich              completamente distinto
  BACKUP                  tar -Mcvf dispositivo dir/     dem
  CD nombredir\           cd nombredir/                  casi la misma sintaxis
  COPY fich1 fich2        cp fich1 fich2                 idem
  DEL fichero             rm fichero                     cuidado no hay undelete
  DELTREE directorio      rm -R directorio/              idem
  DIR                     ls                             no exact. misma sintaxis
  DIR fich /S             find . -name fich              completamente distinto
  EDIT fichero            vi fichero                     creo que no le gustara
                          joe fichero                    mas parecido al EDIT
  EDLIN fichero           ed fichero                     olvdelo
  FORMAT                  fdformat
                          mount, umount                  sintaxis muy distinta
  HELP orden              man orden                      misma filosofia
                          info orden
  MD directorio           mkdir directorio/              casi la misma sintaxis
  MOVE fich1 fich2        mv fich1 fich2                 idem
  NUL                     /dev/null                      idem
  PRINT fichero           lpr fichero                    idem
  PRN                     /dev/lp0,
                          /dev/lp1                       idem
  RD directorio           rmdir directorio/              idem
  REN fich1 fich2         mv fich1 fich2                 no para varios ficheros
  RESTORE                 tar -Mxpvf device              sintaxis distinta
  TYPE fichero            less fichero                   mucho mejor
  WIN                     startx                         polos opuestos!

  Si necesita ms que una tabla de rdenes, contine con las secciones
  siguientes.

  3.  Encontrndose con bash

  Buenas noticias: con Linux usted escribe mucho menos en la lnea de
  rdenes, porque el intrprete bash escribe por usted siempre que sea
  posible, y goza de muy buenas caractersticas de edicin de lnea.
  Para empezar, la tecla flecha-arriba llama a las ltimas lneas
  ejecutadas; pero an hay ms. Pulsar <TAB> completa los nombres de
  ficheros y directorios, por lo que teclear

       $ ls /uTABloTABbTAB

  es como teclear

       $ ls /usr/local/bin

  Si hubiera ambigedades, como al teclear

       $ ls /uTABloTABiTAB

  bash para porque no sabe si usted se refiere a /usr/local/info o a
  /usr/local/include.  Proporcione ms caracteres y pulse <TAB> de
  nuevo.

  Otras combinaciones de teclas tiles son <ESC-BACKSPACE> que borra una
  palabra a la izquierda, mientras que <ESC-D> borra una palabra a la
  derecha; <ESC-F> mueve el cursor una palabra a la derecha, <ESC-B> a
  la izquierda; <CTRL-A> mueve el cursor al principio de la lnea,
  <CTRL-E> al final. La tecla <ALT> es equivalente a <ESC>.

  Suficiente por ahora. Una vez que se acostumbre a estas combinaciones
  de teclas, encontrar bastante molesto el intrprete de rdenes de
  DOS.

  4.  Ficheros y Programas

  4.1.  Ficheros: Nociones preliminares

  Linux tiene una estructura de directorios y ficheros muy similar a la
  de DOSWin. Los ficheros tienen nombres que obedecen unas normas
  especiales, estn guardados en directorios y algunos son ejecutables,
  y entre stos, la mayora tiene opciones en la lnea de rdenes.
  Incluso puede utilizar comodines, redireccin y tuberas. Slo hay
  unas pocas diferencias:

    Bajo DOS, los nombres de ficheros estn en el llamado formato 8.3;
     por ejemplo NOTENOUG.TXT. Bajo Linux podemos hacerlo mejor. Si
     instal Linux usando un sistema de ficheros tal como ext2 o umsdos,
     puede utilizar nombres ms largos (hasta 255 caracteres), y con ms
     de un punto en ellos: por ejemplo,
     Este_es.un.nombre_de.fichero.MUY.largo.  Fjese que he utilizado
     tanto maysculas como minsculas: en efecto...

    Las maysculas y las minsculas en nombres de ficheros u rdenes
     son distintas. Por lo tanto, FICHERO.tar.gz, y fichero.tar.gz son
     dos ficheros distintos. ls es una orden, LS es un error;

    Usuarios de Windows, cuidado al usar nombres de ficheros largos
     bajo Linux. Si un nombre de fichero contiene espacios (no
     recomendado, pero posible), debe encerrar el nombre de fichero
     entre comillas dobles cada vez que se refiera a l. Por ejemplo:

       $ # la siguiente orden crea un directorio llamado "Mis ficheros antiguos"
       $ mkdir "Mis ficheros antiguos"
       $ ls
       Mis ficheros antiguos           bin             tmp

  No deben usarse ciertos caracteres: algunos son !*$&#.

    No hay extensiones obligadas como .COM y .EXE para los programas, o
     .BAT para los ficheros de procesamiento por lotes. Los ficheros
     ejecutables se marcan con un asterisco cuando se ejecuta la orden
     ls -F. Por ejemplo:

       $ ls -F
       cindy.jpg    cjpg*    Soy_un_directorio/  mi_1er_script*  old~

  Los ficheros cjpg* y mi_1er_script* son programas ejecutables. Bajo
  DOS, las copias de seguridad de los ficheros suelen acabar en cuyo
  nombre empieza con un punto es considerado como oculto. Ejemplo: el
  fichero .Soy.un.fichero.oculto no se mostrar a un orden ls;

    Las opciones de los programas bajo DOS se obtienen con /opcin.  En
     Linux se obtienen con -opcin o --opcin.  Ejemplo: dir /s se
     convierte en ls -R. Fjese en que muchos programas DOS (como PKZIP
     o ARJ) utilizan opciones de tipo Unix.

  Ahora puede saltar a la seccin ``de equivalencias'', pero yo de usted
  seguira leyendo.

  4.2.  Enlaces simblicos

  Unix tiene un tipo de fichero que no existe bajo DOS: el enlace
  simblico.  Puede pensar en l como un puntero o enlace a un fichero o
  a un directorio y que puede utilizarse en lugar del fichero o del
  directorio al que apunta; es similar a los Accesos Directos de
  Windows. Ejemplos de enlaces simblicos son /usr/X11, que apunta a
  /usr/X11R6; /dev/modem, que apunta a /dev/ttyS0 o a /dev/ttyS1.

  Para crear un enlace simblico:

       $ ln -s <fichero_o_directorio> <nombre_del_enlace>

  Ejemplo:

       $ ln -s /usr/doc/g77/DOC g77manual.txt

  Ahora puede referirse a g77manual.txt en lugar de /usr/doc/g77/DOC.
  Los enlaces aparecen en los listados de directorio as:

       $ ls -F
       g77manual.txt@
       $ ls -l
       l(muchas cosas...)             g77manual.txt -> /usr/doc/g77/DOC

  4.3.  Permisos y Propiedades

  Los ficheros y directorios de DOS tienen los siguientes atributos: A
  (fichero), H (oculto), R (slo-lectura), y S (sistema).  Slo H y R
  tienen sentido bajo Linux: los ficheros ocultos comienzan con un
  punto, y los de slo lectura, tienen activado el permiso r, pero nada
  ms.

  Bajo Unix un fichero tiene permisos y un propietario, que pertenece
  a un grupo. Mire este ejemplo:

       $ ls -l /bin/ls
       -rwxr-xr-x  1  root  bin  27281 Aug 15 1995 /bin/ls*

  El primer campo contiene los permisos del fichero /bin/ls, que
  pertenece a root, del grupo bin. Dejando la informacin restante a un
  lado (el libro de Matt esta ah para ese propsito), slo recordar lo
  que significa -rwxr-xr-x (de izquierda a derecha):

  - es el tipo de fichero (- = fichero normal, d = directorio, l =
  enlace, etc.); rwx son los permisos del propietario del fichero (leer,
  escribir, ejecutar); r-x son los permisos para el grupo del
  propietario del fichero (leer y ejecutar); (no tocar el concepto de
  grupo, puede pasar sin l mientras sea un novato ;-) r-x son los
  permisos para todos los dems usuarios (leer, ejecutar).

  Esa es la razn de que no pueda borrar el fichero /bin/ls a menos que
  sea root: no tiene el permiso de escritura para hacer eso. Para
  cambiar los permisos de un fichero, la orden es:

       $ chmod <quinXperm> <fichero>

  donde quin podra ser:

    u usuario, que es el propietario,

    g (grupo),

    o (otros).

  X puede ser tanto + como -, y  perm puede ser:

    r (lectura),

    w (escritura)

    x (ejecucin).

  Ejemplos:

  $ chmod u+x fichero

  esto habilita el permiso de ejecucin para el propietario del fichero.
  Atajo: chmod +x fichero.

       $ chmod go-wx fichero

  esto quita el permiso de escritura y de ejecucin para todo el mundo
  menos al usuario.

       $ chmod ugo+rwx fichero

  esto le da a todo el mundo el permiso de lectura, escritura y
  ejecucin.

       $ chmod +s fichero

  esto convierte al fichero en setuid o suid; esto es, un fichero que
  todo el mundo puede ejecutar con los privilegios de su dueo.
  Normalmente, se encontrar con archivos suid del root; estos son, a
  menudo, ficheros importantes del sistema, como el servidor X.

  Una manera ms corta de referirse a los permisos es con nmeros: rwxr-
  xr-x puede ser expresado como 755 (cada letra corresponde a un bit:
  --- es 0, --x es 1, -w- es 2, -wx es 3...).  Parece difcil, pero con
  algo de prctica el concepto se domina.  root, el administrador y
  superusuario, puede cambiar los permisos de los ficheros de todo el
  mundo. Hay mucha ms informacin acerca de esto: LPM.

  4.4.  Ficheros: rdenes equivalentes

  A la izquierda, las rdenes de DOS; a la derecha, sus equivalentes en
  Linux.

       COPY:         cp
       DEL:          rm
       MOVE:         mv
       REN:          mv
       TYPE:         more, less, cat

  Operadores de redireccin y de tuberas:

  < > >>  |

  Comodines: * ?

       nul: /dev/null

       prn, lpt1:  /dev/lp0 o /dev/lp1; lpr

  EJEMPLOS

       DOS                                     Linux
       ---------------------------------------------------------------------

       C:\GUIDO>ATTRIB +R FICH.TXT             $ chmod 400 fich.txt
       C:\GUIDO>COPY JOE.TXT JOE.DOC           $ cp joe.txt joe.doc
       C:\GUIDO>COPY *.* TOTAL                 $ cat * > total
       C:\GUIDO>COPY FRACTALS.DOC PRN          $ lpr fractals.doc
       C:\GUIDO>DEL TEMP                       $ rm temp
       C:\GUIDO>DEL *.BAK                      $ rm *~
       C:\GUIDO>MOVE PAPER.TXT TMP\            $ mv paper.txt tmp/
       C:\GUIDO>REN PAPER.TXT PAPER.ASC        $ mv paper.txt paper.asc
       C:\GUIDO>PRINT LETTER.TXT               $ lpr letter.txt
       C:\GUIDO>TYPE LETTER.TXT                $ more letter.txt
       C:\GUIDO>TYPE LETTER.TXT                $ less letter.txt
       C:\GUIDO>TYPE LETTER.TXT > NUL          $ cat letter.txt > /dev/null
               no disponible                   $ more *.txt *.asc
               no disponible                   $ cat section*.txt | less

  Notas:

    * es ms inteligente bajo Linux: * equivale a todos los ficheros
     excepto los ocultos; .* equivale a todos los ficheros ocultos; *.*
     equivale slo a aquellos ficheros que tienen un punto en medio del
     nombre, seguido de otros caracteres; p*r equivaldra tanto a peor
     como a por;  *c* equivaldra tanto a pecado como a peca.

    Cuando utilice more, pulse espacio para ir leyendo a travs del
     fichero, q o Ctrl-C para salir. less es ms intuitivo y permite
     utilizar las teclas del cursor;

    No hay UNDELETE, as que pinselo dos veces antes de borrar
     cualquier cosa;

    Adems de los < > >> del DOS, Linux tiene el operador 2> para
     redirigir los mensajes de error (stderr); ms an, el operador 2>&1
     redirige stderr a stdout (la salida estndar), mientras que 1>&2
     redirige stdout a stderr;

    Linux tiene otro comodn: los corchetes []. Usar [abc]* equivale a
     los ficheros que empiezan por a, por b o por c; *[I-N,1,2,3]
     equivale a los ficheros que acaban por I, J, K, L, M, N, 1, 2, 3;

    No hay un RENAME como en DOS; esto es, mv *.xxx *.yyy no funciona.
     Un orden similar a REN est disponible en
     ftp://sunsite.unc.edu/pub/Linux/utils/file;

    Use cp -i y mv -i para ser avisado cuando un fichero vaya a ser
     sobreescrito.

  4.5.  Ejecucin de programas: Multitarea y Sesiones

  Para ejecutar un programa, escriba su nombre tal y como lo hara bajo
  DOS.  Si el directorio ---vea la seccin ``Directorios''--- donde el
  programa est guardado est incluido en la variable de entorno PATH
  ---seccin ``Inicializacin''--- el programa comenzar a ejecutarse.
  Excepcin: al contrario que bajo DOS, en Linux un programa localizado
  en el directorio actual no se ejecutar a manos que el directorio
  actual (simbolizado por .) est incluido en el PATH.  Para evitarlo,
  suponiendo que el programa se llame prog, teclee

  Este es el aspecto tpico de una lnea de rdenes:

       $ orden [-o1 [-o2] ... [-on]] [par1 [par2] ... [parn]]  [< input] [> output]

  donde -o1, ..., -on son las opciones del programa, par1, rdenes en la
  lnea de rdenes:

       $ orden1 ; orden2 ; ... ; ordenN

  Esto es todo acerca de ejecutar rdenes, pero es fcil ir un paso ms
  all. Una de las principales razones para usar Linux es que es un
  sistema operativo multitarea ---puede ejecutar varios programas (a
  partir de ahora, procesos) a la vez---. Puede lanzar procesos en
  segundo plano (background)  y seguir trabajando inmediatamente. Ms
  an, Linux permite tener varias sesiones abiertas simultneamente: es
  como tener muchos ordenadores en los que trabajar a la vez.

    Para cambiar a la sesin 1..6 de las consolas virtuales, presione
     <ALT-F1> ... <ALT-F6>

    Para comenzar una nueva sesin en la misma consola virtual sin
     dejar la actual, teclee su - <nombre_de_usuario>. Ejemplo: su -
     root.  Esto es til, por ejemplo, cuando se necesita realizar una
     tarea que slo el root puede hacer.

    Para acabar una sesin, teclee exit. Si hay trabajos parados (ver
     ms abajo), ser avisado.

    Para lanzar un proceso en segundo plano, aada un '&', al final de
     la lnea de rdenes:

  $ nomprog [-opciones] [parametros] [< input] [> output] &
  [1] 123

    el intrprete de rdenes identifica el proceso con un nmero de
     trabajo (p.e. [1]; ver ms abajo), y con un PID (123 en nuestro
     ejemplo).

    Para ver cuntos procesos hay, teclee ps ax. Esto generar una
     lista de procesos actualmente en ejecucin.

    Para matar (finalizar) un proceso, teclee kill <PID>.  Puede que
     necesite matar un proceso cuando no sepa cmo cerrarlo de la manera
     correcta...  ;-). A veces, slo podr matar un proceso con kill
     -SIGKILL <PID>.

     Adems, el intrprete de rdenes permite suspender temporalmente
     (parar) un proceso, mandar un proceso al segundo plano, y traer un
     proceso del segundo plano al primer plano. En este contexto, los
     procesos son denominados trabajos (jobs).

    Para ver cuntos trabajos hay, teclee jobs. Aqu los trabajos son
     identificados por su nmero de trabajo, no por su PID.

    Para parar un proceso ejecutndose en primer plano pulse <CTRL-C>
     (no siempre funciona).

    Para suspender un proceso ejecutndose en primer plano, pulse
     <CTRL-Z> (dem al anterior).

    Para mandar un proceso suspendido al segundo plano (convirtindolo
     en trabajo), teclee bg <trabajo>.

    Para traer un trabajo al primer plano, teclee fg <%trabajo>. Para
     traer al primer plano el ltimo trabajo enviado al segundo plano,
     simplemente teclee fg.

    Para matar un trabajo, teclee kill <%trabajo> donde trabajo puede
     ser 1, 2, 3...

  Usando estas rdenes puede formatear un disco, comprimir un puado de
  ficheros, compilar un programa, y descomprimir un fichero
  simultneamente, y todava tener la lnea de rdenes a su disposicin.
  Intntelo con Windows, slo para ver la diferencia de prestaciones
  (siempre que no se le cuelgue, claro).

  4.6.  Ejecucin de programas en sistemas remotos

  Para ejecutar un programa en una mquina remota cuyo nombre es
  maquina.remota.edu, teclee:

       $ telnet maquina.remota.edu

  Tras introducir su nombre de usuario y contrasea, arranque su
  programa favorito. Obviamente, debe tener una cuenta en la mquina
  remota.

  Si tiene X11, puede incluso ejecutar una aplicacin X en un ordenador
  remoto, mostrndolo en su pantalla de X. Supongamos maquina.remota.edu
  la mquina X remota y sistema.linux.yo su mquina Linux. Para ejecutar
  desde sistema.linux.yo un programa X que reside en maquina.remota.edu,
  haga lo siguiente:

    arranque X, arranque un xterm o un emulador de terminal
     equivalente, y despus teclee:

       $ xhost +maquina.remota.edu
       $ telnet maquina.remota.edu

    tras introducir su nombre y contrasea, teclee:

       remote:$ DISPLAY=sistema.linux.yo:0.0
       remote:$ programa &

  (en vez de DISPLAY..., puede que tenga que escribir setenv DISPLAY
  sistema.linux.yo:0.0. Depende del intrprete de rdenes remoto).

  Y.. voila! Ahora programa se iniciar en maquina.remota.edu y se
  mostrar en su mquina. Aunque mejor no intente esto con un mdem,
  porque sera demasiado lento para poder utilizarse. Adems: es un
  mtodo muy inseguro: por favor, lea el mini-COMO de Aplicaciones X
  Remotas en http://sunsite.unc.edu/LDP/HOWTO/mini/Remote-X-Apps.

  5.  Gestin de Directorios

  5.1.  Directorios: Nociones preliminares

  Hemos visto las diferencias entre los ficheros de DOSWin y Linux.
  Entre directorios, bajo DOSWin el directorio raz es \ y bajo Linux es
  / . De manera similar, los directorios anidados se separan mediante \
  en DOSWin y mediante / en Linux. Ejemplo de rutas de fichero:

       DOS:    C:\PAPERS\GEOLOGY\MID_EOC.TEX
       Linux:  /home/guido/papers/geology/middle_eocene.tex

  Como es normal, .. es el directorio padre y . es el directorio actual.
  Recuerde que el sistema no le dejar hacer cd, rd o md donde usted
  quiera. Cada usuario tiene sus propias cosas en un directorio llamado
  `home', directorio personal o de usuario, cedido por el administrador
  del sistema; por ejemplo, en mi PC mi directorio personal es
  /home/guido.

  5.2.  Permisos de directorios.

  Los directorios tambin tienen permisos. Lo que hemos visto en la
  seccin ``Permisos'' tambin rige para los directorios (usuario,
  grupo, y otros). Para un directorio, rx significa que puede cambiar a
  ese directorio, y w significa que puede crear o borrar ficheros en l
  (segn los permisos de los ficheros, por supuesto), o el directorio
  mismo.

  Por ejemplo, para prevenir que otros usuarios husmeen en
  /home/guido/text:

       $ chmod o-rwx /home/guido/text

  5.3.  Equivalencia de rdenes

       DIR:            ls, find, du
       CD:             cd, pwd
       MD:             mkdir
       RD:             rmdir
       DELTREE:        rm -R
       MOVE:           mv

  EJEMPLOS

       DOS                                     Linux
       ---------------------------------------------------------------------

       C:\GUIDO>dir                            $ ls
       C:\GUIDO>dir file.txt                   $ ls file.txt
       C:\GUIDO>dir *.h *.c                    $ ls *.h *.c
       C:\GUIDO>dir/p                          $ ls | more
       C:\GUIDO>dir/a                          $ ls -l
       C:\GUIDO>dir *.tmp /s                   $ find / -name "*.tmp"
       C:\GUIDO>cd                             $ pwd
               n/a - ver nota                  $ cd
               idem                            $ cd ~
               idem                            $ cd ~/temp
       C:\GUIDO>cd \otros                      $ cd /otros
       C:\GUIDO>cd ..\temp\trash               $ cd ../temp/trash
       C:\GUIDO>md newprogs                    $ mkdir newprogs
       C:\GUIDO>move prog ..                   $ mv prog ..
       C:\GUIDO>md \progs\turbo                $ mkdir /progs/turbo
       C:\GUIDO>deltree temp\trash             $ rm -R temp/trash
       C:\GUIDO>rd newprogs                    $ rmdir newprogs
       C:\GUIDO>rd \progs\turbo                $ rmdir /progs/turbo

  Notas:

    Cuando se use rmdir, el directorio a borrar debe estar vaco.  Para
     borrar un directorio y todos sus contenidos, use rm -rf (bajo su
     propia responsabilidad).

    El carcter ~ es un atajo para el nombre de su directorio personal.
     Las rdenes cd o cd ~ le llevarn a su directorio personal desde
     dondequiera que est; la orden cd ~/tmp le llevar a
     /home/su_directorio_de_usuario/tmp.

    cd - deshace el ltimo cd.

  6.  Disquetes, discos duros y similares.

  Hay dos maneras de adminsitrar dispositivos bajo Linux: a la manera de
  DOS y a la manera de UNIX. Elija.

  6.1.  Administracin de dispositivos en modo DOS

  La mayor parte de las distribuciones de Linux incluyen las Mtools, un
  conjunto de rdenes que son perfectamente equivalentes a sus
  correspondientes rdenes en DOS, pero que empiezan con una 'm': p.e.,
  mformat, mdir, mmd, mdel, y as. Pueden incluso conservar los nombres
  de ficheros largos, pero no los permisos de los ficheros. Si usted
  configura las Mtools editando un fichero llamado /etc/mtools.conf (se
  proporciona un ejemplo en la distribucin), podr tambin acceder a la
  particin DOS/Win, el CD-ROM, y la unidad Zip. Sin embargo, para
  formatear un disco sin formato, la orden mformat no funcionar. Como
  root, tendr que ejecutar esta orden con anterioridad:  fdformat
  /dev/fd0H1440

  Nota: no podr acceder a los ficheros del disquete con una orden como,
  por ejemplo, less a:fich.txt. Esta es la desventaja de la manera DOS
  de montar discos.

  6.2.  Administracin de dispositivos en modo UNIX

  UNIX maneja los dispositivos de una manera distinta. No hay unidades
  separadas como A: o C:; un disco, sea un disquete o lo que sea, pasa a
  ser parte del sistema de ficheros local mediante una operacin
  denominada montaje (mounting). Cuando se acaba de utilizar el disco,
  antes de extraerlo, debe desmontarlo (unmount).

  Fsicamente, dar formato a un disco es una cosa, hacer un sistema de
  ficheros en l es otra. La orden de DOS FORMAT A: hace ambas cosas,
  pero bajo Linux son acciones separadas. Para dar formato a un disco,
  mire ms arriba. Para crear un sistema de ficheros:

       # mkfs -t ext2 -c /dev/fd0H1440

  Puede utilizar dos, vfat (recomendado) u otros formatos en lugar de
  ext2. Una vez que el disco est preparado, mntelo con la orden

       # mount -t ext2 /dev/fd0 /mnt

  especificando el sistema de ficheros correcto si no utiliza ext2.
  Ahora usted puede acceder a los ficheros del disquete. Todo lo que
  sola hacer con A: o B: se hace ahora utilizando en su lugar /mnt.
  Ejemplos:

       DOS                                     Linux
       ---------------------------------------------------------------------

       C:\GUIDO>DIR A:                         $ ls /mnt
       C:\GUIDO>COPY A:*.*                     $ cp /mnt/* .
       C:\GUIDO>COPY *.ZIP A:                  $ cp *.zip /mnt
       C:\GUIDO>EDIT A:FILE.TXT                $ jstar /mnt/file.txt
       C:\GUIDO>A:                             $ cd /mnt
       A:> _                                   /mnt/$ _

  Cuando haya acabado, antes de sacar el disco deber desmontarlo con la
  orden

       # umount /mnt

  Obviamente, debe hacer un fdformat y un mkfs slo a los discos no
  formateados, que no han sido usados nunca. Si quiere utilizar la
  unidad B:, ponga fd1H1440 y fd1 en lugar de fd0H1440 y fd0 en los
  ejemplos anteriores.

  No hace falta decir que la manera de proceder con los disquetes
  tambin funciona con otros dispositivos, como por ejemplo, otro disco
  duro o una unidad CD-ROM. Esto es para montar el CD-ROM:

       # mount -t iso9660 /dev/cdrom /mnt

  Esta era la manera oficial de montar discos, pero hay un truco. Como
  es algo incmodo tener que ser root para montar un disquete o un CD-
  ROM, puede darse permisos a cada usuario de esta manera:

    como root, hacer lo siguiente:

       # mkdir /mnt/a: ; mkdir /mnt/floppy ; mkdir /mnt/cdrom
       # chmod 777 /mnt/floppy* /mnt/cd*
       # # asegrese de que el dispositivo CD-ROM es el adecuado
       # chmod 666 /dev/hdb ; chmod 666 /dev/fd*

    aadir en /etc/fstab las siguientes lneas:

       /dev/cdrom        /mnt/cdrom    iso9660   ro,user,noauto          0       0
       /dev/fd0          /mnt/floppy   vfat      user,noauto             0       0

  Ahora, para montar un disquete DOS y un CD-ROM:

       $ mount /mnt/floppy
       $ mount /mnt/cdrom

  Cualquier usuario puede acceder a /mnt/floppy, /mnt/a:, y /mnt/cdrom.
  Recuerde que si considera importante la seguridad, dejar que todo el
  mundo pueda montar discos de esta manera constituye un gran agujero.

  Dos rdenes tiles son df, que da informacin acerca de los sistemas
  de ficheros montados, y du nombredir que informa del espacio de disco
  consumido por el directorio.

  6.3.  Copias de seguridad

  Hay muchos paquetes que pueden servirle, pero lo ms simple para hacer
  una copia de seguridad multivolumen (como root) es:

       # tar -M -cvf /dev/fd0H1440 /directorio_a_guardar

  Asegrese de tener un disquete formateado en la unidad, y otros ya
  preparados. Para restaurar sus ficheros, inserte el primer disquete en
  la unidad y utilice:

       # tar -M -xpvf /dev/fd0H1440

  7.  Qu pasa con Windows?

  El equivalente a Windows es el sistema grfico X Window, o X11, para
  abreviar. Al contrario que Windows o el Mac, X11 no fue diseado para
  facilitar el uso o para lograr una mejor apariencia, sino para
  proporcionar utilidades grficas a las estaciones de trabajo UNIX.
  Estas son las principales diferencias:

    Mientras que la apariencia y comportamiento de Windows es similar
     en todo el mundo, en X11 esto no es as: es mucho ms configurable.
     La apariencia general de X11 est encomendada a un programa clave
     llamado gestor de ventanas (window manager), del cual hay una
     amplia oferta entre la que escoger: fvwm, basico pero agradable y
     eficiente con el consumo de memoria, fvwm2-95, Afterstep,
     WindowMaker, Enlightenment, y muchos ms. El gestor de ventanas es
     normalmente llamado por un fichero denominado .xinitrc;

    Su gestor de ventanas puede ser configurado de manera que las
     ventanas acten como en Windows: si usted hace click en ella, viene
     al primer plano. Otra posibilidad es que venga al primer plano si
     el puntero del ratn est sobre ella (focus). Tambin, el lugar
     de emplazamiento de las ventanas en la pantalla puede ser
     automtico o interactivo: si un marco extrao aparece en lugar de
     su programa, haga click con el botn izquierdo del ratn donde
     quiera que aparezca;

    La mayor parte de las acciones pueden configurarse editando uno o
     ms ficheros de configuracin. Lea la documentacin de su gestor de
     ventanas; el archivo de configuracin puede ser .fvwmrc, suele
     encontrarse en /etc/X11/nombre-de-gestor-de-ventanas/system.nombre-
     gestor-ventanas;

    Las aplicaciones X11 se escriben empleando unas bibliotecas
     especiales (widget sets); como hay muchas disponibles, las
     aplicaciones tienen aspectos distintos. Las ms bsicas son
     aquellas que usan los controles (widgets) Athena (con aspecto 2D;
     xdvi, xman, xcalc); otras usan Motif (netscape), otras an usan
     Tcl/Tk, Xforms, Qt, Gtk, y otra ms. Casi todas esas bibliotecas
     dan el mismo aspecto y comportamiento que Windows;

    La manera de comportarse, desafortunadamente, puede no ser
     coherente. Por ejemplo, si selecciona una lnea de texto utilizando
     el ratn y pulsa <RETROCEDER>, esperar que la lnea desaparezca,
     verdad? Esto no sucede con aplicaciones basadas en Athena, pero
     sucede con aplicaciones basadas en otros controles;

    El cmo funcionen las barras de desplazamiento y el cambio de
     tamao depender del gestor de ventanas y el juego de widgets.
     Pista: si se encuentra con que las barras de desplazamiento no se
     comportan como usted esperaba, utilice el botn central o los dos
     botones juntos para moverla;

    Las aplicaciones no tienen un icono por defecto, pero pueden tener
     muchos. La mayor parte de los gestores de ventanas proporcionan un
     menu al que se tiene acceso haciendo click en el escritorio
     (ventana raz); no har falta decir que el men puede ser
     configurado. Para cambiar la apariencia de la ventana raz, utilice
     xsetroot o xloadimage;

    El portapapeles slo puede contener texto, y se comporta de manera
     extraa. Cada vez que selecciona texto, se copia automticamente al
     portapapeles: vaya a cualquier sitio y pulse en botn central del
     ratn para pegarlo. Hay una aplicacin, xclipboard, que proporciona
     varios portapapeles;

    Arrastrar y soltar es una opcin, y est disponible solamente si
     usted utiliza aplicaciones X11 que la permitan.

  Para ahorrar memoria, uno debera utilizar aplicaciones que usaran las
  mismas bibliotecas, pero esto es difcil de hacer en la prctica.

  Hay proyectos que pretenden hacer que X11 tenga una apariencia y
  comportamiento tan coherente como Windows. Gnome, http://www.gnome.org
  y KDE, www.kde.org son un ejemplo. Prubelos: no echar de menos su
  escritorio Windows nunca ms.

  8.  Personalizacin del sistema

  8.1.  Ficheros de inicializacin del sistema

  Dos ficheros importantes bajo DOS son el AUTOEXEC.BAT y el CONFIG.SYS,
  los cuales se utilizan al rearrancar el sistema para inicializarlo,
  dar valores a algunas variables de entorno como PATH y FILES, y
  posiblemente lanzar un programa o fichero de procesamiento por lotes.
  Bajo Linux hay varios ficheros de inicializacin, algunos de los
  cuales no deberan ser modificados hasta que usted supiese con
  seguridad lo que est haciendo. De todos modos, estos son los ms
  importantes:

       FICHEROS             NOTAS
       /etc/inittab         no tocar por ahora!
       /etc/rc.d/*          idem

  Si todo lo que necesita es establecer el PATH y otras variables de
  entorno, o desea cambiar los mensajes del login o ejecutar
  automticamente un programa tras iniciar una sesin, eche un vistazo a
  los siguientes ficheros:

       FICHEROS                        NOTAS
       /etc/issue                      establece el mensaje de antes del login
       /etc/motd                       establece el mensaje de despues del login
       /etc/profile                    establece $PATH y otras variables, etc.
       /etc/bashrc                     define alias y funciones, etc. (ver mas abajo)
       /home/su_home/.bashrc           define sus alias y sus funciones
       /home/su_home/.bash_profile   o
       /home/su_home/.profile          establece el entorno y ejecuta sus programas

  Si el ltimo fichero existe (fjese en que es un fichero oculto), se
  leer tras el inicio de sesin y se ejecutarn las rdenes en l
  almacenados.

  Ejemplo; mire este .bash_profile:

  # Soy un comentario
  echo Entorno:
  printenv | less   # equivalente de la orden SET bajo DOS
  alias d='ls -l'   # es facil comprender lo que es un alias
  alias up='cd ..'
  echo "Recuerde que su path es "$PATH
  echo "Hoy es `date`"  # usa la salida de la orden 'date'
  echo "Que tenga un buen dia, "$LOGNAME
  # Lo siguiente es una funcion del shell
  ctgz() # Lista los contenidos de un fichero .tar.gz
  {
    for file in $*
    do
      gzip -dc ${file} | tar tf -
    done
  }
  # fin de .profile

  $PATH y $LOGNAME, lo adivin, son variables de entorno.  Hay muchas
  otras con las que jugar; para buscar ejemplos, LPM de aplicaciones
  como less.

  Poner esta lnea en su /etc/profile le proporcionar el equivalente de
  PROMPT $P$G;

       export PS1="\w\\$ "

  9.  Ficheros de inicializacin de programas

  Bajo Linux, casi todo puede ser configurado de acuerdo con sus
  necesidades. La mayora de los programas tienen uno o ms ficheros de
  inicializacin con los que puede trastear, a menudo llamados que
  querr modificar son:

     .inputrc: usado por bash para definir significados de teclas;

     .xinitrc: usado por startx para inicializar el sistema X Window;

     .fvwmrc: usado por el gestor de ventanas fvwm.

     .joerc: usado por el editor joe;

     .jedrc: usado por el editor jed;

     .pinerc: usado por el lector de correo pine;

     .Xdefault: usado por muchos programas X.

  Para el resto de programas con el que se encontrar tarde o temprano,
  LPM.  Quiz podra ser interesante para usted el documento Cmo
  configurar Linux http://sunsite.unc.edu/mdw/HOWTO/Config-HOWTO.html.

  10.  Trabajo en red: conceptos

  No solo est disponible bajo Linux un Acceso telefnico a redes,
  sino que tambin es ms estable y ms rpido. El nombre clave es
  PPP, el protocolo empleado para conectarse a Internet utilizando
  mdems.  Necesita un ncleo que de soporte a PPP y una herramienta que
  marque y realice la conexin.

  Para recoger el correo de su proovedor de servicios Internet necesita
  una herramienta llamada recolector de correo (email fetcher) que
  utiliza el protocolo POP; cuando recoja el correo, parecer como si
  hubiera sido enviado directamente a su sistema Linux. Entonces deber
  utilizar un gestor de correo de usuario como pine, mutt, elm u otros
  muchos para administrarlo.

  Mientras que bajo Windows, siempre que lanza una aplicacin de
  Internet se ejecuta el programa de conexin, bajo Linux el proceso es
  al revs.  Primero se conecta, y despus se lanza la aplicacin. Un
  programa llamado diald proporciona el acceso usual. Instalar y
  configurar una red sola ser una de las cosas ms difciles de hacer
  bajo Linux, pero ya no lo es: por favor, consulte el documento COMO
  configurar Linux.

  Finalmente, acerca del Entorno de red: puede hacer que su mquina
  Linux aparezca como un Windows NT/9x en una red local de mquinas
  Windows. La palabra mgica es Samba: no el baile brasileo, sino una
  implementacin del protocolo SMB para Linux. Visite
  http://samba.anu.edu.au/samba.

  11.  Un poco de programacin

  11.1.  Rutinas del Intrprete de Comandos: Ficheros .BAT con
  esteroides

  Si ha utilizado ficheros .BAT para crear atajos de largas lneas de
  orden (yo sola hacerlo), el objetivo puede ser obtenido insertando
  las lneas de alias convenientes (ver ejemplo de ms arriba) en el
  profile o en el encantar el lenguaje de Script (guionado) que el
  shell pone a su disposicin: es tan potente como el viejo Qbasic (o
  ms).  Tiene variables, estructuras como while, for, case, if-then-
  else, y montones de nuevas caractersticas: puede ser una buena
  alternativa a un lenguaje de programacin de verdad.

  Para escribir una rutina (script) ---el equivalente a un fichero ASCII
  estndar que contenga las instrucciones, guardarlo, y entonces hacerlo
  ejecutable con la orden chmod +x fichero. Para ejecutarlo, teclee su
  nombre.

  Aviso: el editor del sistema se llama vi, y es un hecho probado que la
  mayor parte de los nuevos usuarios lo encuentran muy difcil de usar.
  No voy a explicar cmo usarlo; por favor, consulte el libro de Matt
  Welsh o busque un cursillo en la red. Suficiente decir por ahora que:

    para insertar texto, pulse `i' y despus el texto;

    para borrar caracteres, teclee ESC y despus `x';

    para salir de vi sin guardar, pulse ESC y despus :q!

    para guardar y salir, pulse ESC y luego :wq

  joe es un buen editor para novatos: llmelo tecleando jstar y tendr
  los mismos atajos de teclas que en el editor de DOSWin.  jed en modo
  WordStar o IDE es incluso mejor. Por favor, consulte la seccin
  ``Dnde encontrar aplicaciones'' para ver dnde conseguir estos
  editores.

  Escribir rutinas bajo bash es una materia tan extensa que requerira
  un libro para abarcarla toda, y no voy a profundizar ms all en este
  tema.  Slo dar un ejemplo de script, del cual se pueden extraer las
  reglas bsicas:

       #!/bin/sh
       # ejemplo.sh
       # Soy un comentario
       # no cambie la primera linea: debe estar ahi
       echo "Este sistema es: `uname -a`" # usa la salida de la orden
       echo "Me llamo $0" # variables intrinsecas
       echo "Usted me dio $# parametros: "$*
       echo "El primer parametro es: "$1
       echo -n "Como se llama? " ; read su_nombre
       echo fijese en la diferencia: "Hola, $su_nombre" # entrecomillando con "
       echo fijese en la diferencia: 'Hola, $su_nombre' # entrecomillando con '
       DIRS=0 ; FILES=0
       for fichero in `ls .` ; do
         if [ -d ${fichero} ] ; then # si el fichero esta en el directorio
           DIRS=`expr $DIRS + 1`  # DIRS = DIRS + 1
         else if [ -f ${fichero} ] ; then
          FILES=`expr $FILES + 1`
         fi
         case ${fichero} in
           gif|*jpg) echo "${fichero}: fichero grafico" ;;
           *.txt|*.tex) echo "${fichero}: fichero de texto" ;;
           *.c|*.f|*.for) echo "${fichero}: fichero de codigo fuente" ;;
           *) echo "${fichero}: fichero generico" ;;
         esac
       done
       echo "Hay ${DIRS} directorios y ${FILES} ficheros"
       ls | grep "ZxY--!!!WKW"
       if [ $? != 0 ] ; then # Sacar el codigo del ultimo orden
         echo "ZxY--!!!WKW no encontrado"
       fi
       echo "ya es suficiente... Para mas informacion teclee 'man bash'."

  11.2.  Sus programas en C

  Bajo Unix, el lenguaje del sistema es C, le guste o no. Pero tambin
  estn a su disposicin otros lenguajes como FORTRAN, Pascal, Lisp,
  Basic, Perl, awk...

  Suponiendo que usted sepa C, hay un par de guas para aquellos que han
  utilizado Turbo C++ o uno de sus hermanos bajo DOS. El compilador de C
  se denomina gcc y carece de todas las florituras que normalmente
  acompaan a sus anlogos bajo DOS: no tiene IDE, ni ayuda en lnea, ni
  debugger integrado, etc... Es slo un rstico compilador de lnea de
  rdenes, muy potente y eficiente. Esto es lo que debe teclear para
  compilar el tpico programa hello.c:

       $ gcc hello.c

  lo que crear un fichero ejecutable llamado a.out. Para cambiar el
  nombre del ejecutable a otro nombre:

       $ gcc -o hola hello.c

  Para enlazar una librera al programa, aada la opcin
  -lnombre_de_librera. Por ejemplo, para enlazar la librera math:

       $ gcc -o mathprog mathprog.c -lm

  (-lnombre_libreria fuerza a gcc a enlazar la librera
  /usr/lib/libnombre_librera.a; por lo tanto -lm enlaza
  /usr/lib/libm.a).

  Bien. Pero cuando su programa est compuesto por varios ficheros de
  cdigo fuente, necesitar usar la utilidad make. Supongamos que ha
  escrito un evaluador de expresiones: su cdigo fuente se denomina
  parser.c e tiene un #include de dos ficheros en su cabecera: parser.h
  y xy.h.  Entonces, desea utilizar las rutinas de parser.c en otro
  programa, calc.c, que hace un #include de parser.h. Vaya lo! Cmo
  se puede compilar calc.c?

  Debe escribir un fichero llamado Makefile, el cual muestra al
  compilador las dependencias entre los ficheros de cdigo fuente y los
  ficheros de cdigo objeto. En nuestro ejemplo:

       # Este es el Makefile utilizado para compilar calc.c
       # Pulse la tecla <TAB> en las posiciones marcadas!

       calc: calc.o parser.o
       <TAB>gcc -o calc calc.o parser.o -lm
       # calc depende de dos ficheros de codigo objeto: calc.o and parser.o

       calc.o: calc.c parser.h
       <TAB>gcc -c calc.c
       # calc.o depende de dos ficheros de codigo fuente

       parser.o:  parser.c parser.h xy.h
       <TAB>gcc -c parser.c
       # parser.o depende de tres ficheros de codigo fuente

       # fin de Makefile.

  Guarde esto como Makefile y teclee

       $ make

  para compilar su programa. Gurdelo como calc.mak de forma alternativa
  y teclee

       $ make -f calc.mak

  Y, por supuesto, LPM.

  Puede pedir ayuda acerca de las funciones de C, que se encuentra en
  las pginas man, seccin 3; por ejemplo:

       $ man 3 printf

  Hay muchas libreras disponibles por ah; entre las primeras que
  desear usar estn las ncurses (efectos en modo texto) y svgalib,
  (grficos para consola). Si se siente suficientemente valiente para
  atacar la programacin bajo X (no es tan difcil), hay muchas
  bibliotecas que harn mucho ms fcil escribir programas para X11.
  Eche un vistazo a http://www.xnet.com/~blatura/linapp6.html, teniendo
  en cuenta el hecho de que Gtk se est volviendo un estndar.

  Muchos editores pueden actuar como IDE. emacs y jed, por ejemplo,
  proporcionan marcado de sintaxis, indentacin automtica, y cosas
  similares. De manera alternativa, consiga el paquete rhide de
  ftp://sunsite.unc.edu:/pub/Linux/devel/debuggers/.  Es un clon del IDE
  de Borland, y cabe la posibilidad de que le guste.

  12.  El restante 1%

  Mucho ms que un 1%, en realidad...

  12.1.  Utilizacin de tar  y gzip

  Bajo Unix hay algunas aplicaciones ampliamente utilizadas para
  archivar y comprimir ficheros. tar se utiliza para archivar varios
  ficheros en uno ---es como PKZIP o Winzip, pero no comprime, slo
  archiva. Para archivar varios ficheros en uno (que llamaremos archivo
  de ahora en adelante):

       $ tar -cvf <nombre_fichero_final.tar> <fichero1> [fichero2...]

  Para extraer ficheros de un archivo:

       $ tar -xpvf <nombre_fichero.tar> [fichero]

  Para listar los ficheros contenidos de un archivo:

       $ tar -tf <nombre_fichero.tar> | less

  Puede comprimir los ficheros usando compress, el cual es obsoleto y no
  debera ser utilizado nunca ms, o usando gzip:

       $ compress <fichero>
       $ gzip <fichero>

  eso crea un fichero comprimido con la extensin .Z (compress) o vez.
  Para descomprimir, use:

       $ compress -d <fichero.Z>
       $ gzip -d <fichero.gz>

  LPM.

  Hay tambin utilidades unarj, zip y unzip (compatibles con ARJ y
  PK??ZIP). Los ficheros con la extensin .tar.gz o tgz (archivados con
  tar, posteriormente comprimidos con gzip) son tan comunes en el mundo
  Unix como los ficheros .ZIP bajo DOS. Para listar los contenidos de un
  fichero .tar.gz utilice:

       $ gzip -dc <fichero.tar.gz> | tar tf - | less

  o tambin:

       $ tar -cvzf <fichero.tar.gz>

  12.2.  Instalacin de aplicaciones

  Antes de nada: instalar paquetes es trabajo del root. La mayora de
  las aplicaciones Linux se distribuyen como ficheros .tar.gz, que
  contienen, tpicamente, un directorio bien denominado conteniendo
  ficheros y/o subdirectorios. Una buena norma es instalar esos paquetes
  en el directorio /usr/local con la orden

       # tar -zxf <archive.tar.gz>

  leyendo despus el fichero README o INSTALL. En la mayora de los
  casos, la aplicacin se distribuye en cdigo fuente, por lo que deber
  compilarla; a menudo, ser suficiente teclear make y despus make
  install.  Si el archivo contiene una rutina configure ejectela
  primero.  Obviamente, necesitar el compilador gcc o g++.

  Algunos archivos deben ser desempaquetados desde el directorio raz;
  ste es el caso de los archivos .tgz de Slackware. Otros archivos
  contienen los ficheros pero no un subdirectorio - cuidado con liar las
  cosas. Antes de instalar un archivo, liste su contenido.

  Debian y Red Hat tienen su propio formato de archivo; respectivamente,
  instalar un paquete rpm, teclee

       # rpm -i package.rpm

  12.3.  Trucos imprescindibles

  Visin de pantallas anteriores: presionar <MAYS + RE PG> (la tecla
  gris) le permite volver atrs unas cuantas pginas, dependiendo de la
  memoria de vdeo que posea.

  Resetear la pantalla: si por un casual hace un cat o un more de un
  fichero binario, su pantalla puede acabar llena de basura.  Para
  arreglar las cosas, teclee reset a ciegas o pulse esta secuencia de
  caracteres: echo CTRL-V ESC c RETURN.

  Pegar texto: en consola, ver ms abajo; en las X, haga click y
  arrastre para seleccionar el texto en una ventana xterm, despus haga
  click en el botn central (o con los dos a la vez si tiene un ratn de
  dos botones) para pegar.  Tambin hay un xclipboard (portapapeles de
  X) (de momento, slo para texto); no se confunda por su muy baja
  velocidad de respuesta.

  Usar el ratn: instale gpm, el controlador de ratn para la consola.
  Haga click y arrastre para seleccionar texto, entonces haga un click
  con el botn derecho para pegar el texto seleccionado. Funciona a
  travs de diferentes consolas virtuales.

  Mensajes del ncleo: chele un vistazo a /var/adm/messages o
  /var/log/messages como root para ver lo que el ncleo le dice,
  incluyendo los mensajes de inicio. La orden dmesg tambin es til.

  12.4.  Dnde encontrar aplicaciones?

  Si se est preguntando si puede reemplazar su vieja y fiable
  aplicacin DOS/Win con una aplicacin de Linux, le sugiero que navegue
  por los mayores directorios de software para Linux:
  ftp://sunsite.unc.edu/pub/Linux, ftp://tsx-11.mit.edu/pub/linux, y
  ftp://ftp.funet.fi/pub/Linux.  Otros buenos lugares para empezar son
  la Pgina de Utilidades y Aplicaciones para Linux
  http://www.xnet.com/~blatura/linapps.shtml, y la pgina oficial de
  Linux http://www.linux.org.

  12.5.  Unas cuantas cosas que Usted no poda hacer

  Linux puede hacer muchas cosas que eran difciles o imposibles de
  hacer con DOS/Windows. Esta es una pequea lista que puede abrir su
  apetito:

    at le permite ejecutar programas a una hora determinada;

    awk es un lenguaje simple pero potente para manipular ficheros de
     datos (y no slo de datos). Por ejemplo, siendo data.dat su fichero
     de datos con varios campos,

       $ awk '$2 ~ "abc" {print $1, "\t", $4}' data.dat

  imprime los campos 1 y 4 de cada lnea de data.dat cuyo segundo campo
  contenga la cadena abc.

    cron es til para realizar tareas peridicamente, en una fecha y
     hora determinadas. Escriba man 5 crontab.

    find (vea tambin seccin ``Directorios: equivalencia de rdenes'')
     es una de las rdenes ms potentes y tiles. Se utiliza para
     encontrar ficheros que tengan unas determinadas caractersticas y
     para realizar acciones en ellos. Un uso general de find es:

       $ find <directorio> <expresin>

  donde <expresin> incluye los criterios de bsqueda y las acciones.
  Ejemplos:

       $ find . -type l -exec ls -l {} \;

  encuentra todos los ficheros que son enlaces simblicos y muestra a
  quin apuntan.

       $ find / -name "*.old" -ok rm {} \;

  encuentra todos los ficheros que ajusten con el patrn y los borra,
  pidiendo su permiso primero.

       $ find . -perm +111

  encuentra todos los ficheros cuyos permisos ajusten con 111 (ejecuta
  bles).

       $ find . -user root

  encuentra todos los ficheros que pertenecen al root. Hay cientos de
  posibilidades. LPM.

    grep busca patrones de texto en ficheros. Por ejemplo,

       $ grep -l "geologa" *.txt

  lista todos los ficheros *.txt que contengan la palabra geologa. La
  variante zgrep trabaja con ficheros comprimidos con gzip. LPM;

    Las expresiones regulares son un mtodo complejo pero muy potente
     de efectuar operaciones de bsqueda en un texto. Por ejemplo,
     ^a[^a-m]X{4,}txt$ se ajusta a una lnea que comienza con `a',
     seguida de cualquier carcter excepto los del intervalo a-m,
     seguido de 4 o ms `X', y terminado en `txt'. Puede utilizar
     expresiones regulares con editores avanzados, less, y muchas otras
     aplicaciones.  man grep para una introduccin.

    script <fichero_script> vuelca los contenidos de la pantalla en
     fichero_script hasta que teclee la orden exit.  Es til para
     depuracin;

    sudo permite a usuarios efectuar algunas tareas propias del root,
     como por ejemplo, formatear y montar discos; LPM);

    uname -a le da informacin acerca de su sistema;

    zcat y zless son tiles para visualizar y trabajar con ficheros
     comprimidos mediante gzip sin necesidad de descomprimirlos.  Por
     ejemplo:

       $ zless textfile.gz
       $ zcat textfile.gz | lpr

    Los siguientes rdenes son tiles a menudo: bc, cal, chsh, cmp,
     cut, fmt, head, hexdump, nl, passwd, printf, sort, split, strings,
     tac, tail, tee, touch, uniq, w, wall, wc, whereis, write, xargs,
     znew.  LPM.

  12.6.  Practicando UNIX bajo DOS/Windows

  Tanto como si me cree como si no, hay buenas utilidades que
  proporcionan un entorno similar a UNIX bajo DOS/Windows. Uno es la
  suite Djgpp (http://www.delorie.com/djgpp) para DOS, mientras que
  Cygnus (http://www.cygnus.com) es un puerto ms completo para Win32.
  Ambos incluyen las mismas herramientas y utilidades de desarrollo GNU
  que Linux; sin embargo, no conseguir la misma estabilidad.

  Si desea tener el sabor de Linux, pruebe Djgpp. Descargue e instale
  los siguientes ficheros (en el momento de escribir, la ltima versin
  era la 2.02): djdev202.zip, bnu281b.zip, bsh1147b.zip, fil316b.zip,
  find41b.zip, grep22b.zip, gwk303b.zip, lss332b.zip, shl112b.zip.. Se
  proporcionan instrucciones de instalacin, y puede encontrar ayuda en
  news:comp.os.msdos.djgpp.

  En particular, utilizar bash bajo DOSWin es una bocanada de aire
  fresco. Para configurarlo adecuadamente, edite el fichero BOOT.BAT que
  viene en la distribucin para que refleje su instalacin, y ponga
  estos ficheros en su directorio de usuario (de la particin Windows)
  en lugar de los que se proporcionan:

       # este es _bashrc

       LS_OPTIONS="-F -s --color=yes"
       alias cp='cp -i'
       alias d='ls -l'
       alias l=less
       alias ls="ls $LS_OPTIONS"
       alias mv='mv -i'
       alias rm='rm -i'
       alias u='cd ..'

  # este es _bprof
  if [ -f ~/_bashrc ]; then
    . ~/_bashrc
  fi
  PS1='\w\$ '
  PS2='> '
  CDPATH="$CDPATH:~"
  # cosas para less(1)
  LESS="-M-Q"
  LESSEDIT="%E ?lt+%lt. %f"
  VISUAL="jed"                    # editor
  LESSCHARSET=latin1              # visualizar letras acentuadas
  export PS1 PS2 CDPATH LS_OPTIONS LESS LESSEDIT LESSOPEN VISUAL LESSCHARSET

  12.7.  Extensiones comunes y programas relacionados

  Se podr encontrar con una gran variedad de extensiones de ficheros.
  Excluyendo las ms exticas (como las de fuentes, etc.), aqu tenemos
  una lista de las extensiones ms usuales:

    1 ... 8: pginas de manual. Lalas con groff -Tlatin1 -man
     <file.1>.

    arj: archivo hecho con arj.

    dvi: fichero de salida producido por TeX (ver ms abajo).  Use xdvi
     para visualizarlo; Use dvips para transformarlo en un fichero
     PostScript (.ps).

    gz: archivo comprimido con gzip.

    info: archivo info (Algo as como una alternativa a las pginas de
     manual). Consiga info.

    lsm: Fichero Linux Software Map. Es un fichero de texto ASCII plano
     que contiene la descripcin de un paquete.

    ps: Fichero PostScript. Para visualizarlo o imprimirlo consiga gs
     y, opcionalmente, ghostview.

    rpm: Paquete de Red Hat. Puede instalarlo en cualquier sistema
     utilizando el gestor de paquetes rpm.

    taz, tar.Z: archivo hecho con tar y posteriormente comprimido con
     compress.

    tgz, tar.gz: archivo hecho con tar y posteriormente comprimido con
     gzip.

    tex: fichero de texto para utilizar con TeX, un poderoso
     formateador de textos. Consiga el paquete tex, disponible en muchas
     distribuciones.

    texi: fichero texinfo, a partir del cual se pueden producir tanto
     archivos TeX como info. Consiga texinfo.

    xbm, xpm, xwd: fichero grfico.

    Z: archivo hecho con compress.

    zip: archivo hecho con zip. Consiga zip y unzip.

  12.8.  Conversin de ficheros

  Si necesita intercambiar ficheros de texto entre DOS/Win y Linux,
  tenga en cuenta del problema de fin de lnea. Bajo DOS, cada lnea
  de texto finaliza con CR/LF (esto es, ASCII 13 + ASCII 10). Bajo
  Linux, con LF. Si edita un fichero de texto DOS bajo Linux, cada lnea
  acabar con un carcter `M' de extraa apariencia. un fichero de texto
  Linux bajo DOS aparecer como una sla lnea kilomtrica sin prrafos.
  Hay un par de utilidades, dos2unix y unix2dos, que convierten estos
  ficheros.

  Nota del revisor: Puede utilizar vim para convertir este tipo de
  ficheros:

    Para convertir un fichero DOS a formato Linux: (Las lneas con #
     delante son comentarios)

       vi fichero_dos.txt
       # pulse ESC
       :set fileformat=unix
       # pulse Enter
       !wq fichero_linux.txt
       # pulse Enter

    Para convertir un fichero Linux para su uso en DOS:

       vi fichero_linux.txt
       # pulse ESC
       :set fileformat=dos
       # pulse Enter
       !wq fichero_dos.txt
       # pulse Enter

  Si sus ficheros de slo-texto contienen caracteres acentuados,
  asegrese de que estn hechos bajo Windows (con NotePad) y no bajo
  DOS; si no, todas las letras acentuadas aparecern como caracteres
  extraos.

  Para convertir ficheros del Word o WordPerfect a texto plano, la
  cuestin es ms dificil, pero an posible. Necesita una de las
  herramientas que pueden encontrarse en los sitios CTAN; uno de ellos
  es ftp://ftp.tex.ac.uk. Consiga el programa word2x del directorio
  /pub/tex/tools/. En concreto, word2x convierte ficheros de Word 6,
  mientras que para ver ficheros realizados con Word 97 necesitar
  mswordview (http://www.csn.ul.ie/~caolan/docs/MSWordView.html) que los
  transforma en HTML.

  12.9.  Entornos ofimticos gratuitos

  Si convertir ficheros no le parece suficiente, tiene la posibilidad de
  probar un paquete (gratuito!) similar a Microsoft Office.

  La suite StarOffice es gratuita para uso privado. Es grande, algo
  lenta, pero muy buena: ofrece muchas funcionalidades no encontradas en
  Microsoft Office. Puede tambin leer y escribir ficheros de Word y
  Excel, aunque la conversin no es siempre perfecta. Visite
  http://www.stardivision.com.

  Otro buen paquete es Corel WordPerfect, del cual est disponible para
  descarga una edicin gratuita. Debera decir ms? Vaya a por l:
  http://www.corel.com.

  13.  Fin, por ahora

  Felicidades! Se ha iniciado un poco en el UNIX y est preparado para
  comenzar a trabajar. Recuerde que su conocimiento del sistema es an
  limitado, y que se espera que practique ms con Linux para usarlo
  cmodamente. Pero si todo lo que quera hacer era conseguir un puado
  de aplicaciones y empezar a trabajar con ellas, apuesto a que lo que
  se incluy aqu fue suficiente.

  Estoy seguro de que habr disfrutado de usar Linux y seguir
  aprendiendo ms acerca de l (todo el mundo lo hace). Apuesto lo que
  sea, tambin, a que nunca volver a DOSWin! Espero haberme hecho
  entender y haber realizado un buen servicio a mis 3 o 4 lectores.

  13.1.  Copyright

  A menos que se establezca lo contrario, los documentos COMO de Linux
  tienen copyright de sus respectivos autores. Los documentos COMO de
  Linux pueden ser reproducidos y distribuidos de manera completa o en
  parte, en cualquier medio fsico o electrnico, siempre y cuando este
  aviso de copyright se mantenga en todas las copias. Se permite y se
  anima a la redistribucin comercial; sin embargo, al autor le gustara
  ser notificado de cualquier distribucin.

  Todas las traducciones, trabajos derivados o agregados que incorporen
  cualquier documento COMO de Linux deben ser mantenidos bajo este aviso
  de Copyright. Esto es, no puede producir un trabajo derivado de un
  documento COMO e imponer restricciones adicionales a su distribucin.
  Se pueden conceder excepciones a estas reglas bajo ciertas
  condiciones;  por favor, contacte con el coordinador de los COMO de
  Linux en la direccin dada ms abajo.

  En resumen, deseamos promocionar la dispersin de esta informacin a
  travs de cuantos canales sea posible. Sin embargo, deseamos retener
  el copyright de los documentos COMO, y nos gustara tener noticias de
  cualquier plan de redistribuir los COMOs.

  Si tiene dudas, contacte con Tim Bynum, el coordinador de Linux HOWTO,
  en linux-howto@sunsite.unc.edu va e-mail.

  13.2.  Agradecimientos

  "CMO pasar de DOS a Linux" fue escrito por Guido Gonzato,
  BORREMEguido@ibogeo.df.unibo.it (Borre el BORREME).  Muchas gracias
  a Matt Welsh, el autor de Linux: Instalacin y Primeros Pasos, a Ian
  Jackson, el autor del Linux frequently asked questions with answers, a
  Giuseppe Zanetti, el autor de Linux, a todos los amigos que me
  enviaron sugerencias, y especialmente a Linus Torvalds y GNU que nos
  trajeron Linux.

  Este documento se distribuye tal cual. He puesto un gran esfuerzo en
  escribirlo tan correctamente como he podido. Pese a ello, la
  informacin contenida en el mismo debe ser utilizada bajo su propia
  responsabilidad.  En ningn caso el autor ser responsable de
  cualquier dao resultante del uso de este documento.

  Los comentarios son bienvenidos. Para cualquier duda, sugerencia,
  crtica, etc., sintase libre de contactar conmigo.

  Disfrute de Linux y de la vida,

  Guido   =8-)

  13.3.  Traduccin

  CMO pasar de DOS/Win a LINUX fue traducido por David Marn Carreo,
  davefx@bigfoot.com, como un pequeo grano de arena ms dentro del
  Proyecto INSFLUG. Para ms informacin, vea la seccin ``''.

  He intentado una traduccin fidedigna del documento original de Guido,
  aunque en algunos lugares haya actualizado informacin o cambiado
  algunas expresiones por otras ms adecuadas a la jerga en nuestro
  idioma.

  Si desea plantear alguna duda, sugerencia o crtica, pues tampoco dude
  en contactar conmigo.

            |   |   |  _|   David Marn Carreo (aka DaveFX)
             \  |  /  /
              |/____\|      Estudiante de Ingeniera en Informtica.
             /_|_/\_|_\     Traductor de documentos Lnux.
             \| (__) |/     Madrid. Espaa.
             / \____/ \
            (____  ____)    ICQ#: 34866516
            _____||_____    E-mail: <davefx@bigfoot.com>
           /  _      _  \   WEb SiTe: http://www.bigfoot.com/~davefx

  14.  Anexo: El INSFLUG

  El INSFLUG forma parte del grupo internacional Linux Documentation
  Project, encargndose de las traducciones al castellano de los Howtos
  (Comos), as como la produccin de documentos originales en aquellos
  casos en los que no existe anlogo en ingls.

  En el INSFLUG se orienta preferentemente a la traduccin de documentos
  breves, como los COMOs y PUFs (Preguntas de Uso Frecuente, las FAQs.
  :) ), etc.

  Dirjase a la sede del INSFLUG para ms informacin al respecto.

  En la sede del INSFLUG encontrar siempre las ltimas versiones de las
  traducciones:  www.insflug.org. Asegrese de comprobar cul es la
  ltima versin disponible en el Insflug antes de bajar un documento de
  un servidor rplica.

  Se proporciona tambin una lista de los servidores rplica (mirror)
  del Insflug ms cercanos a Vd., e informacin relativa a otros
  recursos en castellano.

  Francisco Jos Montilla, pacopepe@insflug.org.

