Eu herdei um sistema de desenvolvimento legado que está mal documentado e o código-fonte não é conhecido se ainda estiver disponível.
Agora eu conseguia localizar parte do código fonte e, na verdade, construir uma parte do sistema.
Gostaria de saber se consigo encontrar o restante do código-fonte e se existe alguma maneira melhor do que a locate *.c
inspeção manual dos arquivos (foi assim que encontrei parte do código).
Existem três máquinas e apenas uma onde encontrei o código fonte que parece ser uma máquina de desenvolvimento. Ele também possui 61 .deb
arquivos que parecem ser as versões compactadas dos projetos, mas examinar os .deb
arquivos mostra que a fonte não está nos arquivos ou, pelo menos, não onde eu estava.
Existe uma boa maneira de "verificar" uma unidade inteira em busca de código-fonte?
find / -wholename '*/debian/rules'
. ou (mais rápido, se o mlocate estiver instalado)locate -r /debian/rules$
locate
seria mais rápido, mas fiquei decepcionado no passado em executá-lo em sistemas recuperados que foram limpos - olocate
banco de dados ainda novo sobre o código-fonte que havia desaparecido. (Isso ainda pode ser uma informação útil se os backups estão disponíveis ...).deb
arquivos que parecem ser o pacote de versões dos projetos" (sic).find
tentando ler arquivos nos/proc
quais desaparecem entre o tempo quefind
cria sua lista de arquivos e o tempo em que os lê. Você pode pular/proc
completamente.Eu costumo usar uma combinação de scripts para trabalhar com arquivos de origem. Assim como a resposta acima, isso não resolverá exatamente o seu caso, mas a pesquisa de símbolos pode ajudar na localização dos arquivos de origem.
O seguinte é adicionado a
bashrc
:Depois, posso listar os arquivos de origem usando
list-code-files | xargs -0 echo
ou procurar símbolos usandocsym some-symbol-regexeg
fonte