I have quite a huge database of citations, but not all of them are included in the document. And of course they are not ordered by appearance in the text, because sometimes I have to go back to some earlier part and include more citations. In our work group it is common practice to share the citation libraries with each other, once the thesis is finished. Since the bibtex format is quite common amongst many scientific journals I would like to include the bibliography as a digital copy. Hence I need to resort the whole *.bib file and remove citations unnecessary.

As suggested I have looked on the several possibilities mentioned in How to split all BibTeX referenced entries from a big BibTeX database to a copy?

Unfortunately those work only for the bibtex case.

I suppose it does have to do something with how the literature is cited:





That way neither BibTool nor Jabref do the job. I am currently trying the bibtex2html approach, but that does not compile.

One thing that I probably should mention is that I am using biber as a backend.

So, the basic question is how can I get the same result with the above combination for biber+biblatex.

I could change those commands by hand, but I really do not want to mess around with automatically written files. ( I could do it with grep and sed but I would rather save the pain.)

  • OK, done, but doesn't the JabRef approach work? (You'll need to be using the BibTeX back end rather than Biber.)
    – Joseph Wright
    Jul 19 '13 at 11:43
  • @JosephWright Am I able to switch between those, without messing things up? Jul 19 '13 at 11:52
  • checkcites may be a good starting point
    – henrique
    Jul 20 '13 at 14:03

Try biber dev version 1.8 from SourceForge. This now allows output to BibTeX format instead of .bbl (this is in addition to the already available "tool mode" which transforms entire data sources). So, you can do this:

pdflatex file
biber --output_format=bibtex file

and instead of a .bbl, you will get file_biber.bib which contains only the cited entries, in citation order. You can use the various --output_* options to control the indentation, casing, crossref resolution etc. of the output and you are free to use any other biber options to re-encode or transform the data before output. You will need to be using at least biblatex 2.7 to use biber 1.7+.


You can try with bibtex2html. In particular, you can use aux2bib command-line tool as explained in the documentation.

Another option is to use BibTool as explained in the question linked by Jagath AR.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.