in reply to Re(4): Spam revenge
in thread Spam revenge

I'm not against using Perl to drive external programs. I just brought it up in this case since this a task that's rather easily done in bash. Not knowing the syntax is an argument I guess - although apart from a number of quirks regarding interpolation, it's pretty simple. Firing commands to an SQL server through its tool on the other hand - and especially processing the output, if you did so - is probably not something one can easily to with the shell. As such, it's really about choosing the right tool for the right job. In your case, Perl was probably it, in this case bash would be the ticket.

Just to illustrate the point, although I really didn't want to do so with this piece of code..

#!/bin/bash end_it_all () { echo echo "did some funny things some $COUNT times... naughty, naughty" exit } trap end_it_all HUP QUIT INT TERM COUNT=0 HOST=localhost while ((1)) ; do wget -r -l100 -U "Stop sending me SPAM! This is the only way to ma +ke you undestand." "http://$HOST" && end_it_all ((COUNT++)) done

Makeshifts last the longest.

Replies are listed 'Best First'.
Re(6): Spam revenge
by Dog and Pony (Priest) on Sep 04, 2002 at 06:26 UTC
    Thanks (++) for the example. I agree that bash might be a more fitting tool... if you know bash. I don't want to know how long it would have taken me to write the above before I got it right, since I don't. :) Probably would be able to do it faster in java, even...

    I mean, with perl, who needs bash? :)


    You have moved into a dark place.
    It is pitch black. You are likely to be eaten by a grue.

      I don't know, /etc/shells doesn't list /usr/bin/perl on my system. ;-) If you usually work on Linux boxen (BSD as well I guess?), you will probably pick up enough bash syntax for scripts like this one in your daily interactive bashing. Besides the oddities in variable interpolation it's pretty simple, so man bash is completely sufficient to figure out the language (as opposed to something like Perl).

      The main reason to use bash is that for the things it's good for, it requires less - sometimes a lot less - red tape than even the already concise Perl. The difference is that while simple things are ridiculously trivial in bash, difficult things are very hard if at all possible and always require a lot of hoop jumping.

      I find bash knowledge to be a very valuable tool in my set, it can save a lot of time if you know when to and when not to use it.

      (Of course, that's because I'm on a Linux machine. If you primarily work on Windows, bash knowledge is just about useless to you.)

      Makeshifts last the longest.