You seem to refer to the standard feature called Reporting Snapshot (aka Analytic Snapshot).
Therefore you should work through the manual here
https://help.salesforce.com/HTViewHelpDoc?id=data_about_analytic_snap.htm&language=en_US
You basically setup a Custom Object as a container for snapshot data on an other tabular or matrix report.
Authorized users can save tabular or summary report results to fields
on a custom object, then map those fields to corresponding fields on a
target object.
One record of the target Custom Object corresponds to a snapshot or one point in time. Each field of the custom object maps to an (usually aggregated) result from the source report.
The target report can be setup to run in regular intervals. This doesn't mean a new report is generated every time.
So after you have setup everything an run it the first time, just open the output report and grab it's url from the browser. This is your report link.
I don't think you can customize the automatic email from salesforce.