Terminal – calculate number of lines of code in a directory

We had an interesting question, can we calculate how many lines of code we have written for an entire project? It turns out this isnt the easiest thing to calculate for a web-project, but we gave it a go. This is the best we have come up with so far for all code we have written to calculate the number of lines of code in all PHP, CSS, JS, HTML and HTM pages.

( find ./ -name '*.php' -print0 -o -name '*.css' -print0 -o -name '*.js' -print0 -o -name '*.html' -print0 -o -name '*.htm' -print0 | xargs -0 cat ) | wc -l

The answer for our particular project was 1500784 lines of code!

If you wanted to do just PHP pages its rather easier:

( find ./ -name '*.php' -print0 | xargs -0 cat ) | wc -l

Ubuntu – set the time zone so that it takes BST into account

On Ubuntu, if you set the time manually using

sudo locale-gen en_GB.UTF-8

then the problem is that it does not take BST (British Summer Time) into account, so during BST the server time is out by 1 hour. This is obviously an issue if you have time restrictions on logging on to whatever system is hosted on the server.

The solution is to run:

sudo dpkg-reconfigure tzdata

Follow through the on-screen prompts to set the locale to Europe and then London this then solves the issue, and the server automatically stays at the correct time when the clocks change.