Sei sulla pagina 1di 4

Shell, comandos bsicos

Comandos bsicos del shell de Linux En esta unidad veremos comandos bsicos para la creacin y visualizacin de ficheros de texto: cat, tac, h ead , tail , nl , cut, paste, join . El comando cat Utilizaremos el comando cat para crear un fichero: cat > nombre_de_fichero {jumi [../jscripts_PHP_JR/linux-comando-cat.js]} Utilizaremos la opcin -n para numerar las lneas del fichero: cat -n nombre_de_fichero {jumi [../jscripts_PHP_JR/linux-comando-cat-n.js]} El comando tac

Utilizaremos el comando tac para visualizar el contenido de un fichero en orden inverso, es decir, comenzando por la primera linea y finalizando por la primera. A remarcar que 'tac' es 'cat' invertido. {jumi [../jscripts_PHP_JR/linux-comando-tac.js]} El comando head

Con el comando head visualizaremos las n primeras lneas de un fichero o los c primeros caracteres del fichero. Usaremos las opciones n y c. {jumi [../jscripts_PHP_JR/linux-comando-head.js]} El comando tail

El comando tail se utilizar para ver las n ltimas lneas del fichero. {jumi [../jscripts_PHP_JR/linux-comando-tail.js]} El comando nl

1/4

Shell, comandos bsicos

El comando nl (numbering lines) visualizaremos las lineas del fichero numeradas. Con las dintintos opciones podremos dar formato a la numeracin (incrementos, justificacin, etc.). {jumi [../jscripts_PHP_JR/linux-comando-nl.js]} El comando cut El comando cut se emplea para extraer campos de las lneas de un fichero. En la simulacin se emplear un fichero en el que los campos estn separados por el carcter tabulacin. Se utiliza la sintaxis cut -f{num_campo_1,...,num_campo_n} nombre_de_fichero {jumi [../jscripts_PHP_JR/linux-comando-cut1.js]} El carcter separador por defecto es el carcter de tabulacin. Se puede utilizar otro carcter separador especificndolo con la opcin d. En la simulacin trabajaremos con un fichero (ficsep) cuyos campos estn separados por el carcter almohadilla ( #) y se emplear una sintaxis del tipo: cut -d'#' -f1,3 ficsep {jumi [../jscripts_PHP_JR/linux-comando-cut2.js]} Otra de las formas habituales de codificar campos en las lneas de un fichero de texto es de forma posicional. En este caso cada campo ocupa una posicin especfica eb la lnea, por ejemplo, el primer campo, con el nombre, podra ocupar los 15 primeros caracteres, el campo de los apellidos de la posicin 16 a la 38 y el campo ciudad de la posicin 39 a la 60. 1...5...10...15...20...25...30...35...40...45...50...55...60 Alberto Gomez Pacheco Madrid Amalia Brito Valdes Sta. Cruz de Tenerife Jose Ramon Casademont Frias Barcelona

Para este tipo de codificacin de datos emplearemos la opcin c en la que se especifica el rango de caracteres que se quiere recuperar, por ejemplo, en el caso del ejemplo anterior, si quisiramos obtener los apellidos haramos: cut -c16-38 ficsep {jumi [../jscripts_PHP_JR/linux-comando-cut3.js]} El comando paste Utilizaremos el comando paste para combinar los registros (lneas) de dos ficheros: paste

2/4

Shell, comandos bsicos

ficUno ficDos {jumi [../jscripts_PHP_JR/linux-comando-paste.js]} Qu pasar si un fichero tiene menos lneas que otro? {jumi [../jscripts_PHP_JR/linux-comando-paste1.js]} Imagina que has ejecutado un procedimiento de instalacin en un equipo, en el fichero tareas tienes la relacin de tareas realizadas en la instalacin y en el fichero resultados has anotado el resultado final de cada uno de los pasos del proceso de instalacin. Cmo podras ver el resultado final de la instalacin? {jumi [../jscripts_PHP_JR/linux-comando-paste3.js]} Comando join Se puede pensar que es una versin mejorada del comando paste. - Slo funciona correctamente si los dos ficheros contienen un campo en comn que deber ser adems el primer campo (si no se utilizan opciones que lo cambien) join fichero_1 fichero_2 - Si en algn fichero no existe esa referencia en el campo clave, se para la presentacin de datos. - En el ejemplo los campos estn separados por el carcter espacio. {jumi [../jscripts_PHP_JR/linux-comando-join.js]} - Si se quieren seleccionar los campos a visualizar, se utilizara la opcin o. join -o1.2 2.2 fichero_1 fichero_2 En este caso se selecciona el segundo campo del primer fichero y el segundo campo del segundo fichero. {jumi [../jscripts_PHP_JR/linux-comando-join1.js]} - Por defecto, el campo clave de cada fichero es el primero, no obstante, es posible seleccionar el campo que actuar de clave en cada fichero, para eso utilizaremos la siguiente sintaxis. join -1 2 -2 3 fichero_1 fichero_2 En este ejemplo se han seleccionado como claves el 2 campo del 1er fichero y el 3er campo del 2 fichero. {jumi [../jscripts_PHP_JR/linux-comando-join2.js]} - Se puede incluir ms de una opcin en el comando.

3/4

Shell, comandos bsicos

- A partir de los dos ficheros del ejemplo anterior, seleccionaremos los campos a visualizar y los campos que actan de clave. join -o1.1 2.1 -1 2 -2 3 capPaises monumentos {jumi [../jscripts_PHP_JR/linux-comando-join3.js]}

4/4

Potrebbero piacerti anche