Here are a variety of scripts I use in administering our system.
/etc/cron.daily
.
/etc/cron.hourly
.
log-loads
. Run it with one argument, namely the path to
the log file, and it prints only the lines with "high" loads (greater than 2.1
for us).
cnt 5
counts
from 1 to 5. With two arguments, such as cnt 3 7
, it counts
from 3 to 7. I use it in shell loops. For example, to make 100 copies
of a skeleton problem file for someone called p1.pg
,
p2.pg
, etc., I use
for j in `cnt 100` ; do cp skeleton.pg p${j}.pg ; doneThen, I make a set definition file, build the set, and the person has a big work area for writing problems.
getfilename setManyProblems.def 37
.
In giving the name of the problem set, the initial "set" and
the ending ".def" are optional.
allShowActive *
to get an overview of system activity.
checktrees path/to/first path/to/second
.
It will ignore set definition files, emacs backup files, and backup files
of problems created by WeBWorK. It reports when files in the two trees
differ, telling you which one is the newer one.
This has been superceeded by the problem browser built into WeBWorK 2, and the problem library above.
Anyone is welcome to read our local documentation for WeBWorK. Keep in mind that it is tuned to local needs in a few ways. It assumes one has local customizations discussed below, and it focuses on the things of particular interest to our effort.
This has been removed because it is part of the most recent release of WeBWorK.
The work represented here was produced with partial support from a grant by the National Science Foundation (DUE-0125369).