Avoiding certain hosts for any sort of work
Do
not use
student.cs
for any sort of development or testing. Invoke
hostselect +listup undergrad
to get a list of all available hosts for you to work and play with. The subset of those servers listed by
hostselect attr=cpu +listall
are what you should use exclusively for testing or other CPU-intensive work.
CSCF maintains a web page describing the hosts available in the student computing environment at
http://www.cs.uwaterloo.ca/cscf/student/hosts. For example,
cpu-solaris.student.cs
will select a Solaris server for CPU-intensive work while
fe-linux.student.cs
will select a Linux server for general interactive use.
pkill and pgrep
pkill
kills all processes with a given name. For instance
pkill java
kills all
java
processes
pgrep
lists all the pids of processes matching a given name. For insance
pgrep java
lists all the pids of
java
processes.
There was once an issue where a parent process created the child process repeatedly without killing anything. The cause was unknown and the command
pgrep _ | xargs kill
killed everything connected to it at once.
getBoxNumber
Returns the box number for a given student. For instance,
/u/isg/pub/bin/getBoxNumber djshaw
will return 30, djshaw's box number.
UNIX 101
Unfamiliar with the UNIX command-line interface? Have a look at (among other things) the Computer Science Club's excellent
UNIX 101 Tutorial. (
KyleSpaans taught this a couple of times)
At and deadline
Sometimes this does not work; make sure you manually close and check it for each deadline
-n.
NB: The at
command should always work. If it does not, testing needs to be done so the cause can be discovered, your ISC should be notified with the details of what causes the failure, and the cause of the error can then hopefully be fixed.
Removing temporary files recursively.
The find
command can help with this. For example, to get rid of all files rooted in your home directory ending in ~ or #, you can create the following csh alias:
alias cleanup "find $HOME -name '*[~#]' -exec rm {} \;"
and then just type cleanup
in any directory when you want to nuke all such files.