¿Cómo encuentro todas las bases de datos sqlite dentro de un montón de archivos sin terminaciones de archivo?

¿Cómo encuentro todas las bases de datos sqlite dentro de un montón de archivos sin terminaciones de archivo?

Tengo un montón de archivos que solo tienen hashes como nombres y no tienen terminaciones de archivo. (Es una copia de seguridad de iPhone para ser precisos). Sé que hay bases de datos SQLite entre estos archivos.

¿Cómo los encuentro?

Respuesta1

Como punto de partida, utilice el filecomando para identificar el tipo de archivo:

find . -print0 | xargs -0 file

Resultado:

./.X11-unix:                                                                sticky directory
./.Test-unix:                                                               sticky directory
./test.db:                                                                  SQLite 3.x database

Luego agregue algo de grepping para filtrar los resultados.

Respuesta2

La utilidad fileidentifica archivos según su número mágico y otras características de identificación.

file <filename>

generará algo como

<filename>: SQLite 3.x database

Para obtener todos los archivos de base de datos sqlite3 en un directorio, puede hacer algo como

file * | grep SQLite

información relacionada