Don't use DIARY but SAVE, and save the workspace (or specific variables) in a .mat file:
doc save
doc load
Note that when projects/computations require more than just a few command lines, we usually create a script that we can re-run integrally or partially (see code cells) at any time. I am saying this, because in your question you mention MATLAB diaries, as if you wanted to use them for recording operations and re-using them later. To create a script, click on the button [New Script], copy paste relevant commands from your history (edit, type new commands, etc), and save it as a M-File. You can then open/run this M-file whenever you need to later.
To summarize: for saving code so you can execute it later, save it in a script/M-file ( .m extension). For saving the workspace (variables' states), save/load to/from a .mat file.