CURSO BÁSICO DE LINUX

Comandos UNIX
FORMATO DE LOS COMANDOS
$ comando opciones argumentos

 Las opciones modifican el funcionamiento del comando. Precedidas por un guión (normalmente).
 Argumento es “aquello” sobre lo que recae la acción del comando. Comando con 2 opciones: cmd –bc (sin espacio entre las opciones)

Comandos UNIX
COMANDO DATE
NAME date - print or set the system date and time SYNOPSIS date [OPTION]... [+FORMAT] date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] DESCRIPTION Display the current time in the given FORMAT, or set the system date. %a, %A locale's weekday name %b, %B locale's month name %d day of month %m month %y, %Y year %D date (mm/dd/yy) %M minute %S seconds %H, %I, %k, %l hour (00..23)

Comandos UNIX COMANDO WHO NAME who . -m presumed: `am i' or `mom likes' are usual. . --idle add user idle time as HOURS:MINUTES. use /var/run/utmp. If ARG1 ARG2 given..show who is logged on SYNOPSIS who [OPTION].. [ FILE | ARG1 ARG2 ] DESCRIPTION -H. -u. or old -m only hostname and user associated with stdin If FILE is not specified. --heading print line of column headings -i. .

which is typically the name of a command.Comandos UNIX COMANDO MAN NAME man . . man only looks in that section of the manual. name is normally the name of the manual page... If you specify section. function.format and display the on-line manual pages SYNOPSIS man [-S section_list] [section] name . or file. DESCRIPTION man formats and displays the on-line manual pages.

.display a line of text SYNOPSIS echo [OPTION].. [STRING].Comandos UNIX COMANDO ECHO NAME echo . -n do not output the trailing newline -e enable interpretation of the backslash-escaped characters listed below -E disable interpretation of those sequences in STRINGs --help display this help and exit (should be alone) --version output version information and exit (should be alone) . DESCRIPTION Echo the STRING(s) to standard output...

Directorios DIRECTORIOS ESPECIALES  El directorio raíz /: directorio del que cuelga todo el sistema de ficheros.  Directorio actual: directorio en el que un usuario está situado en un momento determinado. No tiene padre..  Directorio padre: cada directorio cuelga directamente de otro (salvo el /) que es su directorio padre. El nombre absoluto del directorio padre del directorio actual se representa por . Su nombre absoluto se representa por el símbolo ..  Directorio login o directorio de acceso: aquel directorio al cual va a parar un usuario cuando accede al sistema.. .

The variable HOME is the default dir.change the current directory SYNOPSIS cd [-LP] [dir] DESCRIPTION Change the current directory to dir. .Comandos UNIX COMANDO CD NAME cd .

Comandos UNIX COMANDO PWD NAME pwd . .print the pathname SYNOPSIS pwd [-LP] DESCRIPTION Print the absolute pathname of the current working directory.

. --mode=MODE set permission mode (as in chmod). -m.. if they do not already exist.make directories SYNOPSIS mkdir [OPTION] DIRECTORY. not rwxrwxrwx umask .Comandos UNIX COMANDO MKDIR NAME mkdir . DESCRIPTION Create the DIRECTORY(ies).

if they are empty.remove empty directories SYNOPSIS rmdir [OPTION]...Comandos UNIX COMANDO RMDIR NAME rmdir . DESCRIPTION Remove the DIRECTORY(ies)... DIRECTORY. .

... [FILE]. -a. -l use a long listing format -R list subdirectories recursively .list directory contents SYNOPSIS ls [OPTION].Comandos UNIX COMANDO LS NAME ls . --all do not hide entries starting with .. DESCRIPTION List information about the FILEs (the current directory by default).

to standard output.Comandos UNIX COMANDO CAT NAME cat . DESCRIPTION Concatenate FILE(s). or standard input.concatenate files and print on the standard output SYNOPSIS cat [OPTION] [FILE]. ...

..file perusal filter for crt viewing SYNOPSIS more [-dlfpcsu] [-num] [+/ pattern] [+ linenum] [file .] DESCRIPTION More is a filter for paging through text one screenful at a time. b or ^B Skip backwards k screens. COMMANDS h or ? Help SPACE Display next k lines of text. q or Q Exit..Comandos UNIX COMANDO MORE NAME more . /pattern Search for kth occurrence of regular expression.

copy files and directories SYNOPSIS cp [OPTION].. -d never follow symbolic links -i prompt before overwrite -R copy directories recursively -u copy only when SOURCE file is newer than destination file the .. or multiple SOURCE(s) to DIRECTORY.. SOURCE.. DIRECTORY DESCRIPTION Copy SOURCE to DEST.Comandos UNIX COMANDO CP NAME cp . SOURCE DEST cp [OPTION]...

. DIRECTORY mv [OPTION].. DESCRIPTION Rename SOURCE to DEST. SOURCE.. -f never prompt before overwriting -i prompt before overwrite -u move only older or brand new non-directories . or move SOURCE(s) to DIRECTORY..... --target-directory=DIRECTORY SOURCE. SOURCE DEST mv [OPTION]....move (rename) files SYNOPSIS mv [OPTION].Comandos UNIX COMANDO MV NAME mv .

Comandos UNIX
COMANDO RM
NAME rm - remove files or directories SYNOPSIS rm [OPTION]... FILE... DESCRIPTION rm removes each specified file. By default, it does not remove directories. OPTIONS Remove (unlink) the FILE(s). -f -i -r ignore nonexistent files, never prompt prompt before any removal remove the contents of directories recursively

Comandos UNIX
COMANDO LN
NAME ln - make links between files SYNOPSIS ln [OPTION]... TARGET [LINK_NAME] DESCRIPTION Create a link to the specified TARGET with optional LINK_NAME. If LINK_NAME is omitted, a link with the same basename as the TARGET is created in the current directory. Create hard links by default, symbolic links with --symbolic. When creating hard links, each TARGET must exist.

Protecciones de ficheros
Tres tipos de permisos: lectura, escritura y ejecución. Tres niveles: propietario, grupo del propietario y resto de los usuarios. ––– ––– ––– – permisos propietario ––– ––– ––– permisos grupo ––– ––– –– permisos otros

 Permiso de lectura: para un fichero o directorio, no se puede ver su contenido.  Permiso de escritura: para un fichero, no puede modificarse ni borrarse. Para un directorio, no puede alterarse su contenido. Por tanto, no pueden borrarse ni añadirse ficheros a él, pero sí a los directorios que cuelgan de él.

 Permiso de ejecución: para un fichero, no puede ser ejecutado. Para un directorio, no se puede acceder a él. Esta imposibilidad de acceso supone en la práctica también la negación del permiso de escritura.

-R change files and directories recursively . which can be either a symbolic representation of changes to make.. OPTIONS Change the mode of each FILE to MODE. MODE[. OCTAL-MODE FILE..Comandos UNIX COMANDO CHMOD NAME chmod ..change file access permissions SYNOPSIS chmod [OPTION].. or an octal number representing the bit pattern for the new permissions.MODE]... FILE. DESCRIPTION chmod changes the permissions of each given file according to mode.... chmod [OPTION]..

. = asignar sólo los permisos asignados (y eliminando los demás). Permisos: r lectura. – eliminar permiso (dejando los demás como están). w escritura.Comandos UNIX CHMOD: 1ª forma $ chmod nivel modificación permiso fichero Nivel de la modificación: u (propietario) g (grupo) o (otros) Si no se indica. se entiende que la modificación afecta a los 3 niveles. Tipo de modificación: + añadir permiso (dejando los demás como están). x ejecución.

– Segunda cifra: permisos del grupo. – Primera cifra: permisos del propietario.Comandos UNIX CHMOD: 2ª forma $ chmod nivel modificación permiso fichero Primer argumento: tres cifras con valores ente 0 y 7. mientras que el 0 significa ningún permiso. Así el 7 indica todos los permisos. Forma de obtener el número: r w x 4 2 1 El número obtenido indica la combinación deseada de permisos. . – Tercera cifra: permisos de los otros usuarios.

--from=CURRENT_OWNER:CURRENT_GROUP -R operate on files and directories recursively . according to its first non-option argument. DESCRIPTION chown changes the user and/or group ownership of each given file.... :GROUP FILE..Comandos UNIX COMANDO CHOWN NAME chown . OWNER[:[GROUP]] FILE... chown [OPTION]...change file owner and group SYNOPSIS chown [OPTION].

--reference=RFILE FILE.. chgrp [OPTION]. DESCRIPTION Change the group membership of each FILE to GROUP... GROUP FILE.change group ownership SYNOPSIS chgrp [OPTION].... -R operate on files and directories recursively ...Comandos UNIX COMANDO CHGRP NAME chgrp .

 Asignado directamente por el sistema  Distinto para todos los procesos simultáneamente en el sistema. • Proceso shell (o sh): interpreta los comandos que el usuario introduce. • PID: número identificador de los procesos.Procesos y entorno CONCEPTO DE PROCESO • Proceso: toda acción que se lleva a cabo dentro de un sistema UNIX. • Siempre existe algún proceso en ejecución. que se ejecutan . • Un proceso siempre es lanzado desde otro proceso:  Procesos padre (parent process) y procesos hijo (child process).

• Forma más sencilla de obtener el entorno de un proceso es copiárselo al padre. internamente se ejecutará una secuencia fork-exec.  fork. • Cuando se ejecute un proceso.Procesos y entorno CONCEPTO DE ENTORNO • Entorno: conjunto de informaciones básicas necesarias para la ejecución del proceso. . • Cada proceso debe disponer de su propio entorno para poder ser lanzado. El fork produce un proceso (que incluye al entorno) exactamente igual al proceso padre.

2: Número de identificación del proceso (PID). 6: Terminal desde la que se ejecuta el proceso. 3: Número de identificación del proceso padre (PPID). root 118 1 0 Aug 20 ? 0:00 LmSpool root 123 1 0 Aug 20 ? 0:01 LnMailslot bcus 4550 2665 10 10:37 55 console 0:00 ps-ef Ocho campos: 1: Usuario que ordena la ejecución del proceso (UID).Procesos y entorno VISUALIZACIÓN DE PROCESOS ps –ef  lista de procesos ejecutándose en el computador. 5: Fecha u hora de comienzo del proceso. 4: Tiempo de utilización del procesador para reparto de gastos. . independientemente del terminal. 7: Tiempo de ejecución del proceso. 8: Nombre del proceso.

pero no al revés. Contienen informaciones que forman parte del entorno de un proceso.Procesos y entorno VARIABLES • Variable: información a la que se asigna un nombre. • Debe quedar claro que las variables de entorno transmiten la información a los procesos hijo.Variables de entorno: aquéllas que transmiten el valor (con el mismo nombre) a los procesos hijo. .Variables locales: aquéllas que no se transmiten a los procesos hijo. . • Las variables existentes en un momento y en un entorno dados pueden ser de dos tipos: .

Ø TERM: su contenido es el tipo de terminal que se utiliza.Variables de sistema: son variables con un nombre y un contenido específico.Procesos y entorno VARIABLES • Las variables pueden ser clasificadas también según otro criterio en: . .Variables de usuario: todas las variables asignadas por el usuario. Ø PATH: su contenido es el conjunto de directorios donde el sistema buscará los comandos a ejecutar. que normalmente es común a todos los sistemas UNIX. Ø PS1: su contenido es el símbolo del prompt (habitualmente el $). Las más habituales son: Ø HOME: su contenido es el nombre absoluto del directorio login del usuario. y que no tienen un contenido fijo. .

basta con asignarle un valor de la forma siguiente: $ VAR=valor • Cuando se define una variable. $ A=$A$B  asigna a la variable A el contenido que tenía junto con la variable B o bien la expresión $ A=$A:b  modifica el contenido de la variable A añadiéndole los caracteres :b. ya sean de entorno o locales. Para que lo sea: $ export VAR VAR1 . • export sin argumentos  lista de las variables de entorno • env  conjunto de variables de entorno junto con su contenido. • unset  elimina variable.Procesos y entorno VARIABLES • Para crear una variable.. . ésta no es de “entorno”.. • set  valor de todas las variables existentes.

*: al lado de algún otro carácter.Programación shell METACARACTERES Metacarácter: carácter que tiene un significado especial. representa el contenido de esa variable. pero referido a un sólo carácter. ?: análogo a *. También representa el símbolo de la multiplicación. $: puesto delante de una variable. en lugar de a un conjunto. []: delimita un conjunto de caracteres (tomados de uno en uno). \ (back-slash): antepuesto a otro metacarácter anula el . !: indica lo contrario del carácter siguiente. sustituye a cualquier posible conjunto de caracteres (salvo el •) que pudiera ir colocado en esa posición. -: indica un intervalo de caracteres.

Redireccionamiento de salida: provoca que la salida de un programa vaya a parar a un fichero en lugar de a la pantalla.  Redireccionamiento de entrada. $ PROC > fich Si el fichero no existe lo crea. $ mail < F1 . pero si existe. sin borrar su contenido: $ PROC >> fich Para redireccionar los errores: $ PROC 2> F1 Redireccionamiento de entrada: menos habitual. y lo sustituirá por la salida del proceso.Programación shell REDIRECCIONAMIENTOS Dos tipos:  Redireccionamiento de salida. Para añadir la salida de un proceso a un fichero ya existente. BORRARÁ SU CONTENIDO.

Programación shell PIPELINES Pipeline (o pipe): procedimiento por el que se conectan dos procesos. El pipe se representa por el símbolo |: $ P1|P2 Podemos agrupar el conjunto de procesos: $ ls > F1 $ more F1 con un pipe: $ ls|more Como puede verse. . mientras que un pipe conecta dos procesos. existe una cierta similitud entre el pipe y el redireccionamiento. al no existir fichero. Sin embargo. de forma que la salida del primero pasa a ser la entrada del segundo. hay dos diferencias fundamentales: – Un redireccionamiento conecta un proceso con un fichero. – Un pipe es más rápido que un redireccionamiento. con lo que se evita el acceso a disco (que siempre es lento).

Programación shell ASIGNACIÓN DE SALIDA DE COMANDOS A VARIABLES • Puede desviarse la salida de un proceso a una variable. . asignando a la variable el nombre del proceso encerrado entre comillas simples invertidas: $ VAR=`PROC` • La variable VAR pasa a tomar el valor de la salida del proceso PROC.

. se ordenará todo lo que desde ese momento se introduzca a través del teclado. es decir. $ sort [opc] [campo] ficheros • La ordenación afecta sólo a la salida del comando. el fichero a ordenar queda inalterado. hasta que se pulsa Ctrl-d. • En caso de que no se proporcione ningún argumento. ya sea alfabéticamente o numéricamente (en caso de que el contenido sean números).Programación shell COMANDOS COMANDO SORT • Sirve para ordenar las líneas de un fichero.

en pantalla aparecerá la línea completa en que se halla. ficheros  ficheros donde debe ser localizada la cadena.Programación shell COMANDOS COMANDO GREP • Sirve para localizar una cadena de caracteres dentro de un fichero o ficheros dados. además de la línea aparecerá el nombre del fichero. • En caso de que la cadena exista. $ grep [opc] cadena ficheros cadena  cadena de caracteres que debe ser localizada. . Si se han dado varios ficheros para la localización.

Su estructura es: $ wc [opc] ficheros si no se indican argumentos.Programación shell COMANDOS COMANDO WC • Este comando sirve para contar líneas. -c: cuenta sólo caracteres. palabras y caracteres del fichero seguido del nombre del fichero. • Este comando posee tres opciones: -l: cuenta sólo líneas. . • La salida por pantalla es el número de líneas. -w: cuenta sólo palabras. se toma como entrada el teclado. palabras y caracteres de un fichero.

con la cual añade su entrada al fichero indicado (en lugar de crear el fichero con esa entrada). . y los pasa a su salida. en lugar de sobrescribirlo. • No altera en absoluto los datos que recoge: $ proc1|tee file|proc2 • El comando puede llevar la opción -a. • Recoge los datos de su entrada. a la vez que a la salida standard y al fichero que se indique como argumento.Programación shell COMANDOS COMANDO TEE • Utilizado como filtro.

Estas porciones son enviadas a la pantalla. – Corte por campos . $ cut [opc] ficheros • Existen dos posibles funcionamientos de cut: – Corte por caracteres. Sin embargo. el fichero permanece inalterado.Programación shell COMANDOS COMANDO CUT • Para seleccionar porciones de líneas de un fichero (o de varios).

Programación shell COMANDOS COMANDO PR • Similar al cat. etc. separación de páginas. que se verá a continuación. es decir. definición de márgenes. si bien su función es mostrar en pantalla el contenido de un fichero preparado para ser impreso. . con cabecera. $ pr [opc] ficheros • Este comando se utiliza habitualmente en un pipe junto con el comando lp.

el comando devuelve a la pantalla un número de trabajo. Muestra en pantalla la lista de trabajos en espera de impresión. Por tanto.Programación shell COMANDOS COMANDO LP • Este comando imprime en la impresora el fichero indicado como argumento. . el correspondiente a ese fichero. Este comando no utiliza argumentos. Su estructura es: $ lp ficheros • Al ejecutarse. • El comando lp envía los trabajos a la cola de impresión. la terminal queda disponible para seguir trabajando. El control de la cola de impresión se hace a través del comando lpstat.

%: resto de la división . El signo será uno de los siguientes: +: suma. Es importante tener en cuenta que debe existir un espacio en blanco entre el signo. -: resta. Precedido de \ para eliminar el metacarácter. *: multiplicación. /: división. Precedido de \ para eliminar el metacarácter.Programación shell COMANDOS COMANDO EXPR • Permite realizar operaciones aritméticas con números enteros. $ expr num1 signo num2 • La respuesta es obtenida en pantalla. que deben ser valores enteros. y los argumentos num1 y num2.

Programación shell EJECUCIÓN DE PROCESOS EN BACKGROUND • Para ejecutar varios procesos simultáneamente en una única terminal. $ proc & • Lanzar un proceso en background no elimina la salida por pantalla  deben redireccionarse tanto la salida como la salida de errores. • Un comando lanzado en background interrumpe su ejecución si el usuario sale de la sesión  para evitarlo: $ nohup proceso & . • Se recupera inmediatamente el control de la terminal.

• Es posible realizar comandos o procesos inmunes al comando anterior.Programación shell EJECUCIÓN DE PROCESOS EN BACKGROUND • Cuando se utiliza nohup. es obligado redireccionar tanto la salida como la salida de errores. si bien para los background es la única forma). el sistema los redirecciona al fichero nohup. se utiliza una opción que es: $ kill -9 PID . Si no se hace.out. $ kill PID donde PID es el identificador del proceso que desea abortarse. En estos casos. • Comando kill:para abortar la ejecución de un proceso (de cualquier tipo de proceso.

• Si el manager quiere aumentar la prioridad de un proceso.Programación shell PRIORIDAD DE UN PROCESO • La prioridad de un proceso indica la velocidad con que va a ser ejecutado por parte del sistema. $ nice -increment proceso increment  número de 1 a 19. prioridad 10. utilizará un incremento negativo. donde 1 es la máxima y 29 es la mínima prioridad. • Se mide en un rango de 1 a 29. . • Un usuario puede disminuir (nunca aumentar) la prioridad de un proceso. Normalmente. Cuántos niveles sobre diez va a disminuir la prioridad.

0: el proceso se ha ejecutado correctamente. distinto de 0: el proceso ha finalizado con algún tipo de error . sino que se halla en la variable ?.Programación shell CÓDIGO DE RETORNO • El código de retorno indica de qué manera se ha ejecutado el proceso. • El comando true da un valor 0 al código de retorno. Comandos true y false • Estos dos comandos únicamente tienen como función dar un valor al código de retorno. • El valor del código de retorno no se muestra directamente en pantalla. El comando false da el valor de 255 al código de retorno .

• Los argumentos sobre los que trabaja el comando test son ficheros. • Si la expresión evaluada es correcta. el código de retorno será 0. números o caracteres) pueden combinarse a través de uniones and (-a) y or (-o). • No produce respuesta en la pantalla.Programación shell COMANDO TEST • Para evaluar expresiones y generar un código de retorno. números enteros y cadenas de caracteres. • Todas las evaluaciones (tanto para ficheros. De lo contrario será un valor distinto de 0 (habitualmente 1). .

-b: el argumento es un fichero device bloque. -c: el argumento es un fichero device character. -d: el argumento es un directorio ?. o es un directorio. -w: el argumento tiene permiso de escritura (para el usuario que lo evalúa). -f: el argumento es un fichero ordinario (no directorio ni device).Programación shell COMANDO TEST El comando test con ficheros como argumentos • Cuando los argumentos utilizados son ficheros. . el comando test se utiliza para evaluar la situación de los mismos. -s: el argumento es un fichero y no está vacío. -x: el argumento tiene permiso de ejecución (para el usuario que lo evalúa). -r: el argumento tiene permiso de lectura (para el usuario que lo evalúa).

n1 -gt n2 compara si n1 es mayor que n2. • Para comparaciones numéricas: n1 -eq n2 compara si n1 es igual que n2. n1 -lt n2 compara si n1 es menor que n2. . -z a compara si la longitud de a es cero.Programación shell COMANDO TEST El comando test con números o caracteres como argumentos • Para determinar la veracidad de una expresión lógica. a != b compara si las cadenas a y b son distintas. Las evaluaciones que pueden efectuarse son: • Para evaluaciones no numéricas: a=b compara si las cadenas a y b son ¡guales. n1 -le n2 compara si n1 es menor o igual que n2. a compara si la cadena a no es el carácter nulo. -n a compara si la longitud de a es distinta de cero. n1 -ge n2 compara si n1 es mayor o igual que n2. n1 -ne n2 compara si n1 es distinto de n2.

Ponemos al principio del fichero !#/bin/bash. que contiene comandos o estructuras ejecutables en UNIX. Para ejecutar el archivo le damos permiso y tecleamos: $ . que interpreta el lenguaje del fichero ejecutable de manera sh-compatible. de forma que cuando se lanza. • Para ejecutar un fichero de comandos se puede actuar de dos formas: – Crear una shell hija con el fichero como argumento.archivo . Escribimos: $ sh archivo – Llamar al comando bash. que actúa a modo de proceso. ejecuta secuencialmente todos los procesos que contiene en su interior.Ficheros de comandos • Un fichero de comandos es un fichero ejecutable creado con un editor.

• Símbolos: – $0: nombre del fichero de comandos. – $*: todos los argumentos. etc. • Internamente se hace referencia a esos argumentos teniendo en cuenta su posición. Para usar más DENTRO DEL FICHERO  comando shift para desplazar la posición de los argumentos. . • Máximo 9 argumentos. $2: segundo argumento. • Los argumentos de los ficheros de comandos son informaciones que el usuario aporte. – $#: número de argumentos. – $$: PID del proceso actual. ($1: primer argumento.).Ficheros de comandos ARGUMENTOS EN LOS FICHEROS DE COMANDOS • Los ficheros de comandos admiten argumentos.

• Si se desea detectar un error en la elaboración de un fichero de comandos: $ sh –x fich • Antes de ejecutarse cada comando. • Las variables definidas en el interior del fichero de comandos no afectarán a las ya existentes en el shell (aunque sean de entorno). que indique al usuario qué información se le está pidiendo. • Se detiene la ejecución del fichero de comandos y espera a que se: introduzca el valor correspondiente por parte del usuario read VAR1 • read no lanza ningún mensaje a pantalla  habitual usar delante un comando echo.Ficheros de comandos • Para recoger información de variables a medida que se va ejecutando el fichero de comandos  comando read. INTRODUCCIÓN DE DATOS A TRAVÉS DE VARIABLES . y al finalizar la ejecución. no quedará constancia de ellas. se escribirá en pantalla el nombre del comando a ejecutar.

un número comprendido entre 0 y 255. • En un fichero de comandos su función es abandonar la shell correspondiente al mismo. En este caso. . sin esperar a que se complete todo el fichero. • Esto se hace mediante el comando exit. el código de retorno adopta ese valor.Ficheros de comandos COMANDO EXIT • Se puede finalizar la ejecución de un fichero de comandos en cualquier momento. • Se puede dar como argumento a exit.

• La construcción if puede utilizarse directamente sobre el shell.Ficheros de comandos ESTRUCTURAS DE PROGRAMACIÓN La construcción if • Para tomar decisiones basadas en los códigos de retorno. if CMD1 then CMDA CMDB fi • Si el código de retorno no es 0. • Anidamiento de sentencias if. . $ if > • Al símbolo > se le denomina segundo prompt y su valor reside en la variable PS2. la ejecución del fichero continúa en el proceso situado después de fi.

• Anidamiento de sentencias while. La estructura es la siguiente: while CMD1 do CDMA CMDB done • Si el código de retorno de CMD1 no es cero la ejecución continúa en el proceso siguiente a done. puede establecerse un ciclo sin fin. si CMD1 es true. .Ficheros de comandos ESTRUCTURAS DE PROGRAMACIÓN La construcción while • Para generar un ciclo condicionado. • Obviamente.

Ficheros de comandos Comando break • Para finalizar un ciclo de forma prematura. while CMD1 do CMDA CMDB while CMDC do CMDE break done CMDJ CMDK done CMDX • break puede llevar un argumento numérico. sin que éste llegue a su fin. que indica cuántos ciclos do-done (incluidos uno dentro de otro) deben .

Ficheros de comandos Comando continue • Interrumpe la ejecución del ciclo pero vuelve a ejecutar el proceso que condiciona la ejecución del mismo. while CMD1 do CMDA CMDB while CMDC do CMDE continue done CMDJ CMDK done CMDX .

.Ficheros de comandos ESTRUCTURAS DE PROGRAMACIÓN La construcción for • Para generar un ciclo. do CMD1 CMD2 done • La variable V toma el valor char1 (puede ser un número.. pero un número determinado de veces. V torna el siguiente valor de la lista (char2) y vuelve a repetirse el proceso. incluido el funcionamiento de break y continue. • A continuación. un carácter o conjunto de caracteres o un fichero) y a continuación ejecuta todos los procesos comprendidos entre do-done. for V in char1 char2 . • Todo lo dicho para la construcción while es aplicable a for. y así continúa hasta que V toma el último valor. .

Ficheros de comandos ESTRUCTURAS DE PROGRAMACIÓN La construcción case • Equivalente a un if múltiple.?. Si coincide. se ejecutan los procesos siguientes hasta el símbolo . case CHAR in modelo 1) (delimitador de modelo) CMD1 . esac es case al revés) • • Se compara la cadena CHAR (normalmente será el contenido de una variable) con modelos. modelo n) CMDN . esac (fin de case... (fin de modelo) modelo 2) CMD2 .) . etc... En los modelos de comparación pueden utilizarse metacaracteres (*..

Sign up to vote on this title
UsefulNot useful