martes, 2 de septiembre de 2008

Buscar un texto dentro de los archivos

Esto seguro es algo muy conocido por muchos de los que leerán este post, pero acabo de leer un post en MundoGeek donde muestran dos formas de usar el comando grep para poder encontrar cierta palabra en los archivos, y aunque esto sea quizás algo basico, creo que de todas maneras habra a alguien que le sirva, bueno aquí les dejo estos comando.

Por ejemplo para buscar la palabra "hola" en un archivo, escribes

grep "hola" /home/usuario/codigo/*.py


esto buscara la palabra "hola" en todos los archivos con extension .py del actual directorio.

Y si quieres buscarla pero en todos los archivos del directorio escribes

grep -r "hola" /home/usuario/codigo/


3 comentarios:

Ladybug Congonga dijo...

Hola Daniel.
Congonga reportandose con mas problemas :S

Ufff estaba todo tan bien con DB2 9.5 corriendo en Ubunty Gutsy, creaba bases de datos, las borraba, me conectaba, hacia consultas, insertaba tuplas... Hoy quise conectarme y ni siquiera estaba corriendo el servidor! Hice db2start y me arrojó el siguiente error de memoria (que no sé como arreglar) si hasta ayer esto no pasaba... lo unico nuevo es que ahora tengo 5 bases de datos creadas. Antes tenia solo dos.

SQL1220N The database manager shared memory set cannot be allocated.

¿Me puedes ayudar? Ya revisé en la ayuda de IBM pero dice que tengo que configurar el kernel y que me falta memoria compartida... no tengo idea como cambiar eso.

ESTO ES LO QUE DICE IBM

SQL1220N
El conjunto de memoria compartida del gestor de bases de datos no se ha podido asignar.
Explicación:

El gestor de bases de datos no ha podido asignar su conjunto de memoria compartida. La causa de este error puede radicar en que no hay suficientes recursos de memoria, ya sea para el gestor de bases de datos o para el entorno en que la operación se lleva a cabo. Los recursos de memoria que pueden causar este error son:

* El número de identificadores de memoria compartida asignados en el sistema.
* El tamaño del segmento de memoria compartido
* La cantidad de espacio de paginación o intercambio que hay disponible en el sistema.
* La cantidad de memoria física disponible en el sistema.

Respuesta del Usuario:

Realice una o más de las acciones siguientes:

* Asegúrese de que se dispone de suficientes recursos del sistema para satisfacer los requisitos del gestor de bases de datos, así como los de los programas que se ejecutan en el sistema.
* En Linux de 32 bits, aumente el parámetro shmmax del kernel hasta 256 MB. En Linux de 64 bits, aumente el parámetro shmmax del kernel hasta 1 GB.
* Reduzca el requisito de memoria del gestor de bases de datos para este conjunto de memoria, reduciendo para ello los parámetros de configuración del gestor de bases de datos que puedan afectarlo. Estos son: maxagents, maxdari y numdb.
* Cuando sea necesario, detenga otros programas que utilicen el sistema.

Ladybug Congonga dijo...

Daniel, volví esta vez con la solución:

Para configurar el kernel, debía aumentar la memoria compartida. Lo logré y así db2 no tuvo problemas en arrancar ni nada.

#echo "kernel.shmmax=134217728" >> /etc/sysctl.conf

:D

Tal vez ayudemos a otros con el mismo problema (aunque na q ver q te postee en esta entrada :P)

Daniel Cabrera dijo...

Hola,
Que bueno que encontraste la solución, aunque lo mejor hubiera sido que este en una entrada relacionada con el tema, pero igual la podrán encontrar.

Te recomiendo que visites, si aun no lo has hecho la pagina http://www.ibm.com/developerworks encontraras mucha ayuda para DB2 en los foros.