|
|||||||||||||||||
|
.:: Como generar un archivo de texto Para ello haremos uso del comando cat y de las posibilidades de redireccionamiento de la entrada (stdin) y salida estándar (stdout) de Que nos provee Shell. Esto es ideal para cuando necesitamos generar un fichero de texto corto, y no deseamos recurrir a nuestro editor de texto fa- vorito (sea entorno de Shell o de XII). El truco consiste en lo siguiente: $cat > miarchivo.txt << EOF De esta forma, cat recibe su entrada de la entrada estándar (stdin), y de-osita su salida en miarchivo.txt, mientras Shell espera la ocurrencia de la cadena de caracteres EOF, para agregarla al final del archivo. Es decir, damos la orden, escribimos el contenido y finalizamos con una última línea que contenga solamente la palabra EOF (End Of File). .:: Búsqueda de archivos Debemos usar el comando find de la siguiente manera: $find / -name "nombre" Donde la barra (/) indica el path desde donde realizar la búsqueda (en nuestro caso el punto de montaje del directorio raíz), aunque de querer realizar una búsqueda por un directorio específico, como puede ser /home, cambiamos la barra (/) por /home. El parámetro -name le pasa la cadena de caracteres "nombre" como patrón de búsqueda. Aquí sólo mencionamos un uso básico del comando find; les recomendamos que lean las páginas del manual ("man find"J para ver la multitud de interesantes opciones de búsqueda que ofrece este comando. El comando find es muchas veces usado en combinación con otras aplicaciones (mediante tuberías), como cat o grep. .:: Buscar datos específicos en las salidas Para realizar esto nos valdremos del metodo de pipes (tuberias) de nuestra shell, junto con la accion del comando grep: $ comando | grep -e "patron de_busqueda" El parametro -e le pasa a grep una cadena de caracteres que tendra qye usar como patron de busqueda (en caso de ser mas de un patron, se agrega un -e <otro_patron_de_busqueda> por cada uno). Cabe aclarar que omitir el parametro -e, toma la primera cadena de caracteres luego de la orden grep como patron de busqueda. Un ejemplo practico para lo comentado anteriormente seria buscar nuestro demonio de ppp (pppd) en la lista de procesos: $ps xa | grep -e "pppd" .:: Como borrar archivos temporales Aca tenemos un sencillo script que navega recursivamente un directorio, borrando los archivos de auto grabado y backup de emacs, archivos .o y archivos .log de TeX. Tambien comprime ficheros .tex y ficheros README. #!/bin/sh #SQUEEZE borra ficheros inutiles y comprime ficheros .tex #y README #By Barry tolnas, tolnas@sun1.engr.utk.edu # echo squeezing $PWD find $PWD \( -name \*~ -or -name \*.o -or -name \*.log -or -name \*\#\) exec rm -f {} \; find $pwd \( -name \*.tex -or -name \*README\* -or -name \*readme\*\) - exec gzip -9 {} \; Recuerden que una vez que terminamos ee tipear el script, debemos otorgarle permisos de ejecusion mediate el comando chmod. .:: Anular la salida de errores Este procedimiento es aplicable a la ejecucion de cualquier programa, y su sintaxis es la siguiente: $programa 2> /dev/null & El parametro 2> indica que redireccione la salida de errores estándar (file descriptor 2) a /ev/null (Device Null: algo asi como un gran agujero negro). .:: Imprimir paginas con márgenes Si queremos imprimir rapidamente un archivo textual con margenes, para luego poder hacer agujeritos y archivarlo en una linda carpeta, acá presentamos un script que hace todo esto en un solo paso: #!/bin/sh cat $1 | pr -t -o 5 -w 85 | lpr .:: Montar disquetes VFAT en KDE Este truco nos permitira montar, automaticamente desde KDE, un disquete con formato VFAT. Para lograrlo, abriremos una consola y luego tipearemos el comando mcedit Desktop/floopy.kdelnk. Esto abrira el editor de textos con el archivo correspondiente al disquete, en el Escritorio. Aqui deberemos cambiar la linea FSType=Default por FSType=v-fat. Finalmente, el archivo debera lucir como el siguiente: # KDE Config File [KDE Desktop Entry] UnmountIcon=3floopy_unmount.xpm Comment[fi]=Tiedostosysteemi Comment[es]=Dispositivo con sistema de ficheros Comment[fr]=Périphérique avec systéme de fichiers MountPoint=/mnt/floopy Comment=File System Device Comment[pl]= Urz
Cabe destacar que este archivo se encuentra en el directorio personal de cada usuario, por lo que si queremos que todos los usuarios del sistema tengan acceso a este tipo de disquetes, tendremos que modificar el mismo.
.:: Copiando sin montar
En Linux, existen un conjunto de utilidades para el manejo de disquetes con formatos de DOS, de forma automatica, llamadas mtools. Si queremos copiar un archivo a disco sin tener que montarlo antes, podemos usar el comando mcopy de la siguiente forma:
mcopy archivo.ext a:
El formato de los parámetros es exactamente el mismo que en DOS. Existen muchos comandos más; podremos encontrar más informacion en las paginas del manual de mtools (man mtools).
.:: Como cerrar X de una...
Si se colgaron todas las aplicaiones de nuestro sistema XWindow, o simplemente se nos acabo la paciencia como para usar la opcion [cerrar sistema], podemos presionar la combinacion de teclas <CTRL+ALT+RETROCESO>. Esto matara automaticamente todos los procesos ejecutados bajo XWindow, y nos devolvera al modo texto o a la pantalla de registro, si usamos XDM. Además, podemos usar lascombinaciones de teclas <CTRL+ALT+"+"> y >CTRL+ALT+-> para cambiar entere las diferentes resoluciones de pantalla que hayan sido configuradas.
.:: Llendo rapido a casa
En lugar de tipear el comando cd /home/usuario para ir a nuestro directorio personal, podemos tipear uno mucho más corto. Éste es cd ~. Además, es posible hacer referencia a nuestros directorios personales utilizando la variable de entorno $HOME como parametro de cualquier comando.
.:: Mensajes de compilación
Si compilamos alguna aplicación alguna vez, habremos notado la inmensa cantidad de mensajes que devuelve make, el compilador y enlazador de Linux. Éstos pasan por toda la pantalla a una velocidad que hace que sean imposibles de leer. Si no queremos que estos mensajes se muestren en pantalla, simplemente deberemos redireccionar la salida del comando al dispositivo /dev/null. Tambien podemos enviar la salida a otra consola usando el símbolo de redirección (>>.)
.:: Cómo matar una consola colgada
Muchas veces ejecutamos aplicaiones que hacen mal uso de las librerías de la consola o de las ncurses, y como consecuencia, toda la salida en esa consola es absolutamente ilegible. La solución para esto es matar el proceso que corresponde a la consola (generalemente se llama getty). Para buscarlo, es posible usar el comando ps -ax. Si aún no lo encontramos, podemos utilizar el comanndo lsof /dev/ttyx, donde /dev/ttyx es la ruta al dispositivo de consola que dejó de funcionar correctamente.
.:: Cómo definir una pantalla de bienvenida
Podemos definir una pantalla de bienvenida para que se muestre cada vez que un usuario se registra en el sistema. Para esto, simplemente debemos editar (o crear, si es necesario) el archivo /etc/issue. Cabe destacar que este archivo puede tener secuencias de escape ANSI, por lo que podremos usar caracteres especiales y colores. En muchas ditribuciones, este archivos se autoescribe con la información básica del sistema, y borra nuestro producto creativo la próxima vez que éste se inicia. Para mantenerlo es recomendable guardar el archivo issue creado por nosotros en un directorio diferente, y luego agrear la siguiente línea al archivo /etc/rc.d/rc.local:
rm /etc/issue cp ruta/del/nueo/issue /etc/issue
Esto simplemente borra el archivo issue generado por el propio Linux y copia nuestro archivo en su lugar cada vez que se inicia el sistema.
.:: Script para borrar los cores
Más de una vez nos habremos cruzado con un archivo CORE. Éste es el resultado del vuelco de memoria de un programa en un momento crítico de ejecución. Si no somos expertos en programación, esta clase de archivos no son útiles. Podemos borrarlos manualmente, o usar el siguiente script que se encargará de buscar y borrar todos los archivos CORE que haya en un direcotrio. Recuerden otorgarle permisos de ejecución antes de intentar ejecutarlo.
#!/bin/sh USO="$0 <directorio> <archivo>"
if [ $# !=2 ] ; then echo $USAGE exit fi
echo Borrando... find $1 -name core -atime 7 -print -type f -exec rm {} \;
echo e-mailing for name in `find $1 -name core -exec ls {} \; | cut -c16-24` do echo $name cat $2 | mail $name done
Es recomendable ejecutar este archivo script frecuentemente, o agregarlo a alguno de nuestros eventos en la crontab.
.:: Desconectar usuarios de forma remota
Una forma muy sencilla de desconectar un usuario de nuestro sistema, de forma remota, consiste en buscar su Shell (generalmente el programa Bash) con el comando ps -ax y luego matarlo con el comando kill -9 PID, donde PID es el número del proceso del Shell de dicho usuario.
.:: Completado automático
Es muy común ver que en nuestra partición de Linux, nos encontramos con arhivos que poseen nombres kilométricos. Muchas veces, tipear alguno de ellos como parte de un parámetro para un comando nos demanda varios intentos fallidos. Bash nos ofrece una solución muy práctica llamada Autocompletado; consiste en escribir los primeros caractéres del nombre del archivo y luego presionar la tecla <TAB> (tabulador). De esta manera, Bash buscará automáticamente entre los archivos que se encuentren en el directorio actual, y escribirá todos los caractéres que faltan. Si el archivo no s encontrado o aparecen muchos archivos con los mismos caractéres iniciales, Bash emitirá un pitido, y deberemos escribir más letras iniciales del archivo, para identificar el documento buscado.
.:: Cómo eliminar LILO de la MBR
Muchos usuarios, luego de eliminar la partición de Linux de un disco rígido, notan que cuando reinician el sistema LILO, aun sigue ahi, ofreciendo bootear un sistema Linux que ya no existe, y otro sistema operativo (generalmente Windows). Cuando esto sucede, es necesario eliminar LILO de la Master Good Record del sistema. Para esto, lo mas sencillo es iniciar el sistema con un disco booteable de Windows, y luego ejecutar el comando fdisk del siguiente modo:
fdisk/mbr
.:: Iniciando X automáticamente
Muchas distribuciones no inician el sistema Xwindow automáticamente al inicio. Esto para algunos usuarios (generalmente los más expertos) es una ventaja, y para otros no lo es. Técnicamente hablando lo único que hacen estas distribuciones es configurar automáticamente el sisema para que se inicie en el nivel de ejecución número 3 (nivel multiusuario con soporte de red). Para hacer que Linux cargue el modo gráfico al inicio, debemos configurar el nivel de ejecución número 5 como el predeterminado (el primero en ejecutarse). Esto lo hacemos fácilmente editando el archivo /etc/inittab y reemplazando la línea:
id:3:initdefault:
por
id:5:initdefault:
La próxima vez que iniciemos el sistema, se cargará XDM, que nos permite defenir nuestro usuario y contraseña en modo gráfico.
.:: Quitar la pantalla virtual
Para muchos usuarios de Xwindow, la pantalla virtual es una molestia. Es posible desactivarla y usar los valores predefinidos de pantalla editando el archivo /etc/X11/XF86Config y comentando las líneas 'Virtual' correspondientes a la configuración del servidor de video. Cabe destacar que en algunas distribuciones, el archivo de configuración de Xwindow se encuentra en /etc/XF86Config.
.:: Cómo definir un mensaje de Bienvenida
Podemos definir un mensaje que será mostrado a todos los usuarios una vez que se hayan registrado en el sistma. Esto es muy útil para informarlos sobre las novedades y cambios que se vayan dando dia a dia. Para esto, simplemente tenemos que editar el archivo /etc/motd con el editor de textos que más nos guste. Cabe destacar que pueden usar secuencias de escape ANSI. El mensaje se mostrará automaticamente al inicio del sistema la próxiam vez que se inicie la computadora. Una recomendacion: no hagan mensajes excesivamente largos ya que esto provocara que es sistema tarde mas en cargar.
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Hack Enterprise [ http://hacke.webcindario.com ] | Todos los derechos reservados ® | CopyRight 2002-2XXX © | Prohibida la copia parcial y/o total de la web | Prohibido linkear links linkeados, linkear links tambien... sin la previa y/o anticipada autorizacion de/los webmaster(s) | Queda reservado por copyright todo el diseño de la web, imagenes, logos, etc... | Webmasters -> webmaster@hackenterprise.zzn.com | Page -> hacke@hackenterprise.zzn.com | Webmaster limp -> Mario E. Geréz de La República Argentina, Bs. As., La Matanza, Isidro Casanova | Gracias a las webs amigas por el material brindado ! |