485eff2ea7 | ||
---|---|---|
.. | ||
README.md | ||
findmod-json.sh | ||
findmod.sh | ||
findmod2.pl | ||
footer.tpl | ||
header.tpl |
README.md
Recently-Updated Page Shell Scripts
As soon as ~ford granted me entrance to tilde.Club, I knew that I wanted to keep tabs on what cool things folks were doing there. And thinking back to the mid-90s, what was the best way to know what was new on a site? A recently-updated page! So I set about making one for tilde.club.
There's no question at all that this is a rudimentary hack, but it's the exact sort of hack that was The Way To Do Things on the mid-90s Internet. (Note that that's the mid-90s-capital-I-Internet, not the 21st-century-lowercase-i-internet.) And I'm using tried-and-true command-line Unix filesystem commands to grab, parse, and sort the list of pages, so I feel like I'm treading in the footsteps of thousands before me. The result is the list of all tilde.club pages updated in the last 24 hours, which is generated from the findmod.sh
shell script once a minute from a crontab job.
Of course, while the HTML version of the recently-updated list is firmly mid-90s (well, if you view source you'll see that it's 21st-century HTML5, but still), enabling cooler 21st-century functionality required making the same list available in a more easily-parsed format. Enter JSON, and the API version of the recently-updated list, generated by the findmod-json.sh
shell script once a minute via crontab as well.
Hope these are useful to someone!
Jason Levine, aka ~delfuego
Recently-Updated Page Perl Script
findmod2.pl
is a pure-Perl5 reimplementation of ~delfuego's scripts.
It's self-contained, readable, well-documented and will search a
user's entire public_html
subtree for the most recent file rather
than just using the date of the index.html
file.
It accepts the following command-lines options:
- --domain name -- Domain name for the site. Guesses if omitted.
- --root url -- Root URL to use in links. Derived from domain by default.
- --since-hours hours -- Number of hours considered recent. Default = 24.
- --destdir path -- Destination directory for output files.
- --update-every seconds -- Regenerate the lists every seconds.
- --verbose -- Print more information as the program runs.
- --help -- Print a simple help message and exit.
If --update-every
is given with a positive number, findmod2.pl
will loop forever, waiting the given number of seconds before
rescanning and regenerating the list. Otherwise, it will scan once
and exit.
The output files are named tilde.XXh.json
and tilde.XXh.html
,
where XX is replaced by number of hours considered recent (24 or the
argument given with --since-hours
).
Chris Reuter, ~suetanvil.