[25482] in Perl-Users-Digest

home help back first fref pref prev next nref lref last post

Perl-Users Digest, Issue: 7727 Volume: 10

daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Wed Feb 2 18:05:40 2005

Date: Wed, 2 Feb 2005 15:05:14 -0800 (PST)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)

Perl-Users Digest           Wed, 2 Feb 2005     Volume: 10 Number: 7727

Today's topics:
        [OT] Google Groups posters, please read <mritty@gmail.com>
    Re: [OT] Google Groups posters, please read <tim@vegeta.ath.cx>
    Re: [OT] Google Groups posters, please read <tassilo.von.parseval@rwth-aachen.de>
    Re: [OT] Google Groups posters, please read <tadmc@augustmail.com>
    Re: [OT] Perl Code which draws camel <hendrik_maryns@despammed.com>
    Re: Free perl obfuscation service <postmaster@castleamber.com>
    Re: GD filehandle problem <mislam@spamless.uiuc.edu>
    Re: GD filehandle problem <emschwar@fc.hp.com>
    Re: GD filehandle problem <flavell@ph.gla.ac.uk>
    Re: GD filehandle problem <noreply@gunnar.cc>
    Re: GD filehandle problem <flavell@ph.gla.ac.uk>
    Re: GD filehandle problem <abigail@abigail.nl>
    Re: Hashtable of arrays <nobull@mail.com>
    Re: in line editing <jgibson@mail.arc.nasa.gov>
    Re: in line editing ioneabu@yahoo.com
    Re: in line editing <someone@example.com>
    Re: Invisible cache for LWP / Mechanize? <skuo@mtwhitney.nsc.com>
        Parsing files clearguy02@yahoo.com
    Re: Parsing files <toreau@gmail.com>
    Re: Perl Code which draws camel ioneabu@yahoo.com
        problem with LWS <tanja@verso.co.izbaciovo>
    Re: regexp inside <> + typos in perldoc <hendrik_maryns@despammed.com>
        Sending/ Receiving SQL arguments to a subroutine <pat@patmail.com>
    Re: Sending/ Receiving SQL arguments to a subroutine <jgibson@mail.arc.nasa.gov>
    Re: Sending/ Receiving SQL arguments to a subroutine <nobull@mail.com>
    Re: Sending/ Receiving SQL arguments to a subroutine <spamtrap@dot-app.org>
    Re: stop extra lines from printing <mjl69mjl69@myaccmyacc.net>
    Re: Uninitialised value error stumping me.. ioneabu@yahoo.com
    Re: what does each file do in webmin? <tadmc@augustmail.com>
    Re: x-www-form-urlencoded <tadmc@augustmail.com>
        Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)

----------------------------------------------------------------------

Date: Wed, 02 Feb 2005 19:35:03 GMT
From: "Paul Lalli" <mritty@gmail.com>
Subject: [OT] Google Groups posters, please read
Message-Id: <HX9Md.3089$sR5.3042@trndny05>

I'm taking this directly from Google Groups's own FAQ pages
(http://groups-beta.google.com/support/bin/answer.py?answer=12348&topic=
108):

===================

What's good 'netiquette' when posting to Usenet?

Summarize what you're following up.

When you click 'Reply' under 'show options' to follow up an existing
article, Google Groups includes the full article in quotes, with the
cursor at the top of the article. Tempting though it is to just start
typing your message, please STOP and do two things first. Look at the
quoted text and remove parts that are irrelevant. Then, go to the BOTTOM
of the article and start typing there. Doing this makes it much easier
for your readers to get through your post. They'll have a reminder of
the relevant text before your comment, but won't have to re-read the
entire article. And if your reply appears on a site before the original
article does, they'll get the gist of what you're talking about.

===================

Recently, this newsgroup has seen a deluge of Google Groups posters who
apparently don't read or ignore Google Groups's own advice.  I would
encourage all Usenet regulars who become annoyed at this tendency to
refer the offenders to this policy.

Thank you for your time,
Paul Lalli



------------------------------

Date: Wed, 02 Feb 2005 20:24:51 GMT
From: Tim Hammerquist <tim@vegeta.ath.cx>
Subject: Re: [OT] Google Groups posters, please read
Message-Id: <slrnd02ddg.ka9.tim@vegeta.saiyix>

Paul Lalli <mritty@gmail.com> wrote:
> Recently, this newsgroup has seen a deluge of Google Groups posters who
> apparently don't read or ignore Google Groups's own advice.  I would
> encourage all Usenet regulars who become annoyed at this tendency to
> refer the offenders to this policy.

/me awaits the subsequent deluge of "You're not the boss of me!" posts.

Tim Hammerquist


------------------------------

Date: Wed, 2 Feb 2005 22:13:28 +0100
From: "Tassilo v. Parseval" <tassilo.von.parseval@rwth-aachen.de>
Subject: Re: [OT] Google Groups posters, please read
Message-Id: <slrnd02gjo.17g.tassilo.von.parseval@localhost.localdomain>

Also sprach Paul Lalli:

> Recently, this newsgroup has seen a deluge of Google Groups posters who
> apparently don't read or ignore Google Groups's own advice.  I would
> encourage all Usenet regulars who become annoyed at this tendency to
> refer the offenders to this policy.

Or even simpler:

[*]
Score: =-9999
%Expires:
User-Agent: G2/0\.2
%EOS

Postings made via google will end up in malformatted code snippets
anyway, so I don't see any reason why I should not killfile them,
regardless of netiquette.

Tassilo
-- 
use bigint;
$n=71423350343770280161397026330337371139054411854220053437565440;
$m=-8,;;$_=$n&(0xff)<<$m,,$_>>=$m,,print+chr,,while(($m+=8)<=200);


------------------------------

Date: Wed, 2 Feb 2005 16:54:29 -0600
From: Tad McClellan <tadmc@augustmail.com>
Subject: Re: [OT] Google Groups posters, please read
Message-Id: <slrnd02mh5.1ud.tadmc@magna.augustmail.com>

Tim Hammerquist <tim@vegeta.ath.cx> wrote:
> Paul Lalli <mritty@gmail.com> wrote:
>> Recently, this newsgroup has seen a deluge of Google Groups posters who
>> apparently don't read or ignore Google Groups's own advice.  I would
>> encourage all Usenet regulars who become annoyed at this tendency to
>> refer the offenders to this policy.
> 
> /me awaits the subsequent deluge of "You're not the boss of me!" posts.


That would be fine with me.

There are too many posts here to read everybody's anyway.


-- 
    Tad McClellan                          SGML consulting
    tadmc@augustmail.com                   Perl programming
    Fort Worth, Texas


------------------------------

Date: Wed, 02 Feb 2005 20:32:34 +0100
From: Hendrik Maryns <hendrik_maryns@despammed.com>
Subject: Re: [OT] Perl Code which draws camel
Message-Id: <8bedneKfcrJNt5zfRVnyug@scarlet.biz>

Steven Vasilogianis schreef:
> Bernhard Walle <bernhard.walle@gmx.de> writes:
> 
> 
>>somewhere I've seen Perl code which is very small (i. e. can be put in a
>>signature of a mail) which draws a camel on the screen. Does anybody
>>have the source?
> 
> 
> I know of this one, but it's not small enough to fit in a sig, unless
> you want to be annoying.
> 

> http://www.thinkgeek.com/tshirts/coder/321a/ (mentioned by another poster)

If I try the code mentioned there, I get the following, what is going 
wrong here?

---startoutput---

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 3.
Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 5.
Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 7.
Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 9.
Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 11.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 13.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 15.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 17.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 19.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 21.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 23.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 25.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 27.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 29.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 31.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 33.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 35.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 37.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 39.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 41.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 43.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 45.

Newline in left-justified string for sprintf at (eval 1) line 1, <DATA> 
line 47.

          mJXXLm.                                       .mJXXLm
         JXXXXXXXXL.       JXXLm.       .mJXXL       .JXXXXXXXXL
        {XXXXXXXXXXX.     JXXXmXXXXm mXXXXmXXXL     .XXXXXXXXXXX}
       .XXXXXXXXXXXXXL.  {XXXXXXXXXF 7XXXXXXXXX}  .JXXXXXXXXXXXXX.
      JXXXXXXXXXXXXXXXXL.`XXXXXX.       .XXXXXX'.JXXXXXXXXXXXXXXXXL
     JXXXXXXXXXXXXXXXXXXXmXXXXXXX.     .XXXXXXXmXXXXXXXXXXXXXXXXXXXL
   .XXXXXXXXXXXXXXXXXXXXXXXXXXXXX}     {XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
  .XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX       XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
  JXXXXXXXXXXXXXXXXXXXXXXXXXXXXXF       7XXXXXXXXXXXXXXXXXXXXXXXXXXXXXL
  XX^7XXXXXXXXXXXXXXXXXXXXXXXXXF         7XXXXXXXXXXXXXXXXXXXXXXXXXF^XX
  XX {XXXFXXXXXXXXXXXXXXXXXXXF'           `7XXXXXXXXXXXXXXXXXXX7XXX} XX
  `X}{XXX'7XXXFXXXXX^XXXXX `'               `' XXXXX^XXXXX7XXXF`XXX}{X'
   `'XXX' {XXX'XXXXX 7XXXF                     7XXXF XXXXX`XXX} `XXX`'
    .XX}  {XXF {XXXX}`XXX}                     {XXX'{XXXX} 7XX}  {XX.
    {XX   `XXL  `7XX} 7XX}                     {XXF {XXF'  JXX'   XX}
    `XX    `XXL mXXF  {XX                       XX}  7XXm JXX'    XX'
     XX      7XXXF    `XX                       XX'    7XXXF      XX
     XX.    JXXXX.     7X.                     .XF     .XXXXL    .XX
    {XXL    7XF7XXX.   {XX                     XX}   .XXXF7XF    JXX}
    `XXX'              `XXXm                 mXXX'              `XXX'
                        ^^^^^               ^^^^^
           7XFL7JX7X{LFXJFXXF\X7J7X{ }XFLFX\7XX7LX7J}XFXLFJ7XF
            `^'^^^^^''^^7XJLXX7X}LX{ }XJ{XFXXJLXF^^``^^^^^`^'
                     .mJXXLm                  mJXXLm.
     .mJXXL       .JXXXXXXXXL                JXXXXXXXXL.       JXXLm.
  mXXXXmXXXL     .XXXXXXXXXXX}              {XXXXXXXXXXX.     JXXXmXXXXm
  7XXXXXXXXX}  .JXXXXXXXXXXXXX.            .XXXXXXXXXXXXXL.  {XXXXXXXXXF
     .XXXXXX'.JXXXXXXXXXXXXXXXXL          JXXXXXXXXXXXXXXXXL.`XXXXXX.
    .XXXXXXXmXXXXXXXXXXXXXXXXXXXL        JXXXXXXXXXXXXXXXXXXXmXXXXXXX.
    {XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.    .XXXXXXXXXXXXXXXXXXXXXXXXXXXXX}
     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.  .XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
     7XXXXXXXXXXXXXXXXXXXXXXXXXXXXXL  JXXXXXXXXXXXXXXXXXXXXXXXXXXXXXF
      7XXXXXXXXXXXXXXXXXXXXXXXXXF^XX  XX^7XXXXXXXXXXXXXXXXXXXXXXXXXF
       `7XXXXXXXXXXXXXXXXXXX7XXX} XX  XX {XXXFXXXXXXXXXXXXXXXXXXXF'
         `' XXXXX^XXXXX7XXXF`XXX}{X'  `X}{XXX'7XXXFXXXXX^XXXXX `'
            7XXXF XXXXX`XXX} `XXX`'    `'XXX' {XXX'XXXXX 7XXXF
            {XXX'{XXXX} 7XX}  {XX.      .XX}  {XXF {XXXX}`XXX}
            {XXF {XXF'  JXX'   XX}      {XX   `XXL  `7XX} 7XX}
             XX}  7XXm JXX'    XX'      `XX    `XXL mXXF  {XX
             XX'    7XXXF      XX        XX      7XXXF    `XX
            .XF     .XXXXL    .XX        XX.    JXXXX.     7X.
            XX}   .XXXF7XF    JXX}      {XXL    7XF7XXX.   {XX
          mXXX'              `XXX'      `XXX'              `XXXm
         ^^^^^                                              ^^^^^
  }XFLFX\7XX7LX7J}XFXLFJ7XF                    7XFL7JX7X{LFXJFXXF\X7J7X{
  }XJ{XFXXJLXF^^``^^^^^`^'                      `^'^^^^^''^^7XJLXX7X}LX{
The use of a camel image in association with Perl is a trademark of 
O'Reilly &
Associates, Inc. Used with 
permission.#camelcode,copyright2000byStephenB.Jenkins
#TheuseofacamelimagewiththetopicofPerl#isatrademarkofO'Reilly&Associates,Inc.#Us
edwithpermission.

---endofoutput---

H.


------------------------------

Date: 2 Feb 2005 21:10:59 GMT
From: John Bokma <postmaster@castleamber.com>
Subject: Re: Free perl obfuscation service
Message-Id: <Xns95F19A71A83D0castleamber@130.133.1.4>

Apokrif wrote:

> Liraz Siri :
> 
>> So I turned my obfuscator program into a web service anybody can use
>> for free:
>> 
>> http://liraz.org/obfus.html
> 
> Why doesn't it rename variable names ?

Because most programmers already use obfuscated variable names.

-- 
John                   Small Perl scripts: http://johnbokma.com/perl/
               Perl programmer available:     http://castleamber.com/
            Happy Customers: http://castleamber.com/testimonials.html
                        


------------------------------

Date: Wed, 02 Feb 2005 15:01:49 -0600
From: Sharif Islam <mislam@spamless.uiuc.edu>
Subject: Re: GD filehandle problem
Message-Id: <ctrf3t$aru$1@news.ks.uiuc.edu>

Jim Gibson wrote:
> In article <ctr1ko$64h$1@news.ks.uiuc.edu>, Sharif Islam
> <mislam@spamless.uiuc.edu> wrote:
> 
> 
>>I am making a png file using a filehandle.
>>
>>__BEGIN CODE___
> 
> 
> [drawing statements snipped]
> 
> 
>>open(GRAPH, ">test.png") || die "cannot open file test.png";
>>binmode STDOUT;
> 
> 
> binmode GRAPH;
> 
> [rest snipped]
> 
Ok, that was pretty stupid.
btw, I was under the impression that you don't need binmode in a unix
like system. I am running redhat advanced server.

Thanks.


------------------------------

Date: Wed, 02 Feb 2005 14:09:02 -0700
From: Eric Schwartz <emschwar@fc.hp.com>
Subject: Re: GD filehandle problem
Message-Id: <etosm4e4qkx.fsf@wilson.emschwar>

Sharif Islam <mislam@spamless.uiuc.edu> writes:
> Ok, that was pretty stupid.
> btw, I was under the impression that you don't need binmode in a unix
> like system. I am running redhat advanced server.

With the advent of utf8 and locales and the like, this isn't true
anymore.  The rule of thumb now is always to use binmode on binary
data, and don't use it on non-binary data.

-=Eric
-- 
Come to think of it, there are already a million monkeys on a million
typewriters, and Usenet is NOTHING like Shakespeare.
		-- Blair Houghton.


------------------------------

Date: Wed, 2 Feb 2005 21:14:19 +0000
From: "Alan J. Flavell" <flavell@ph.gla.ac.uk>
Subject: Re: GD filehandle problem
Message-Id: <Pine.LNX.4.61.0502022108260.6515@ppepc56.ph.gla.ac.uk>

On Wed, 2 Feb 2005, Sharif Islam wrote:

> btw, I was under the impression that you don't need binmode in a unix
> like system.

Then perhaps it's time to update yourself on the documentation.

My hunch would be that you're using a version of Perl whose unicode 
support is sensitive to locale, and you've got utf-8 in your locale.

The best-practice advice would be to use binmode() whenever it's the 
right thing to do[1], irrespective of whether you /need/ it in the 
particular instance.  Perl is supposed to be platform-portable, after 
all.

[1] and omit it when it's the wrong thing to do (just in case there 
was any doubt about that ;-)


------------------------------

Date: Wed, 02 Feb 2005 22:28:32 +0100
From: Gunnar Hjalmarsson <noreply@gunnar.cc>
Subject: Re: GD filehandle problem
Message-Id: <36cvjsF4tasevU1@individual.net>

Alan J. Flavell wrote:
> The best-practice advice would be to use binmode() whenever it's the 
> right thing to do[1], irrespective of whether you /need/ it in the 
> particular instance.  Perl is supposed to be platform-portable, after 
> all.
> 
> [1] and omit it when it's the wrong thing to do (just in case there 
> was any doubt about that ;-)

Actually, a while ago I experienced a situation when that approach lead 
to unexpected behaviour, which I handled by limiting the use of 
binmode() to platforms where it's needed. Right now I can't recall the 
exact situation, but if/when I do, I'll post some code that illustrates 
the problem.

-- 
Gunnar Hjalmarsson
Email: http://www.gunnar.cc/cgi-bin/contact.pl


------------------------------

Date: Wed, 2 Feb 2005 22:41:28 +0000
From: "Alan J. Flavell" <flavell@ph.gla.ac.uk>
Subject: Re: GD filehandle problem
Message-Id: <Pine.LNX.4.61.0502022233570.6683@ppepc56.ph.gla.ac.uk>

On Wed, 2 Feb 2005, Gunnar Hjalmarsson wrote:

> Actually, a while ago I experienced a situation when that approach 
> lead to unexpected behaviour, which I handled by limiting the use of 
> binmode() to platforms where it's needed. Right now I can't recall 
> the exact situation,

Well, if your script needs to handle data in a platform-foreign 
format, then a different approach could be called for.  
Broadly-speaking, Perl's i/o is tuned to work with data in the 
format(s) native to the platform where the script is working. Perl's 
portability is primarily about porting the entire application, data 
and all.

> if/when I do, I'll post some code that illustrates the problem.

Please do.  I'm looking forward to an interesting discussion ;-)


------------------------------

Date: 02 Feb 2005 23:01:34 GMT
From: Abigail <abigail@abigail.nl>
Subject: Re: GD filehandle problem
Message-Id: <slrnd02mue.a9.abigail@alexandra.abigail.nl>

Alan J. Flavell (flavell@ph.gla.ac.uk) wrote on MMMMCLXXIII September
MCMXCIII in <URL:news:Pine.LNX.4.61.0502022108260.6515@ppepc56.ph.gla.ac.uk>:
""  On Wed, 2 Feb 2005, Sharif Islam wrote:
""  
"" > btw, I was under the impression that you don't need binmode in a unix
"" > like system.
""  
""  Then perhaps it's time to update yourself on the documentation.
""  
""  My hunch would be that you're using a version of Perl whose unicode 
""  support is sensitive to locale, and you've got utf-8 in your locale.
""  
""  The best-practice advice would be to use binmode() whenever it's the 
""  right thing to do[1], irrespective of whether you /need/ it in the 
""  particular instance.  Perl is supposed to be platform-portable, after 
""  all.

\begin{rant}

binmode() wouldn't be necessary if Perl was platform-portable.

\end{rant}



Abigail
-- 
map{${+chr}=chr}map{$_=>$_^ord$"}$=+$]..3*$=/2;        
print "$J$u$s$t $a$n$o$t$h$e$r $P$e$r$l $H$a$c$k$e$r\n";


------------------------------

Date: 2 Feb 2005 12:12:32 -0800
From: "nobull@mail.com" <nobull@mail.com>
Subject: Re: Hashtable of arrays
Message-Id: <1107375152.054100.306480@g14g2000cwa.googlegroups.com>


mike wrote:
> Thanks, nobull.  Good advice all around.  I was feeling guilty about
> that grep...  You're right, poor style, and I deserve to get
> called on it.

I think you miss my point. If you are going to use an array then
there's nothing particularly wrong with grep. Sure it will loop all the
way to the end even if you find a hit early on but when hits are rare
anyhow this is no issue.

> I agree that a HoH would be better here than a HoA, but didn't want
to
> do too much violence to the OP's original implementation.

OK, fair enough.

> Without changing the HoA implementation, I came up with this, which I
> think is better than what I had before:
>
> |    for my $word (@words_left) {
> |        if (!exists($trans{$word})) {

As I said before, I think it would be more ideomatic to leave out the
exists() as $trans{$word} will never exist but be false.

> |            $trans{$word} = [ @words_right ];

There is no need to copy the array - you could just say \@words_right.

> |        } else {
> |            for my $nw (@words_right) {
> |                my $found = 0;
> |                for (my $i=0; $i<@{$trans{$word}} && !$found; $i++)
{
> |                    $found++ if $trans{$word}->[$i] eq $nw;
> |                }

There is no need for $i in there

|              my $found; # undef is a perfectly good false
|              for (@{$trans{$word}}) {
|                  $found++,last if $_ eq $nw;
|              }

Note: $found++ is actually slower than $found=1 but I find it more
ideomatic.

Personally I'd still use grep in this case as the effort of breaking
out of the loop is hardly warranted by the few duplicates we are
expecting.

|  push @{$trans{$word}}, $nw unless grep { $_ eq $nw }
@{$trans{$word}};



------------------------------

Date: Wed, 02 Feb 2005 12:38:07 -0800
From: Jim Gibson <jgibson@mail.arc.nasa.gov>
Subject: Re: in line editing
Message-Id: <020220051238075692%jgibson@mail.arc.nasa.gov>

In article <4d1f122c.0502020928.6928bac0@posting.google.com>, roller
<kitoclick1@yahoo.co.uk> wrote:

> Perl Gurus I need some help,
> 
> I am currently using a shell script to read in a file of usernames and
> then for each matching one in a seperate file change the matching
> line. The problem is I do this by grep -v username file1 > file1.temp
> and then move file1.temp over file1. What this does is it sticks all
> the changes at the bottom. I need to preserve the structure in file1
> which is like this:
> 
> # Comment
> username -soft  server:/export/vol00/users:username
> 
> Because the comment explains some details of the user below. How can I
> use perl to read in a file of usernames then for each match in file1
> do an in line edit using
> 
> s/server/another_server/
> 
> This way I can ensure the comment above each matching line still
> explains the line below.

It is not clear from your description which file is being modified. You
want to read in the data from the file that is not being modified and
save the data in an array or more likely a hash. Use an array if there
is just one string to save; use a hash if there is additional data
associated with that string.

Then, open the second file (the one that will be modified) for reading.
Open a third file for writing, which will become the new version. For
each line read from the second file, make whatever changes are
necessary, then write the line to the third file. When you are all
done, close both files. You can rename the files so the new, modified
file takes the place of the old one.

See descriptions of the perl open, print, and close functions:

perldoc -f open
perldoc -f print
perldoc -f close

etc. Make an attempt and post your program if it doesn't do what you
want it to. Please adhere to the guidelines for this newsgroup that are
posted twice-a-week. Be sure and put 'use strict' and 'use warnings' at
the top of your program.

Good luck.


----== Posted via Newsfeeds.Com - Unlimited-Uncensored-Secure Usenet News==----
http://www.newsfeeds.com The #1 Newsgroup Service in the World! >100,000 Newsgroups
---= East/West-Coast Server Farms - Total Privacy via Encryption =---


------------------------------

Date: 2 Feb 2005 13:40:22 -0800
From: ioneabu@yahoo.com
Subject: Re: in line editing
Message-Id: <1107380422.513893.156140@c13g2000cwb.googlegroups.com>


roller wrote:
> Perl Gurus I need some help,
>
> I am currently using a shell script to read in a file of usernames
and
> then for each matching one in a seperate file change the matching
> line. The problem is I do this by grep -v username file1 > file1.temp
> and then move file1.temp over file1. What this does is it sticks all
> the changes at the bottom. I need to preserve the structure in file1
> which is like this:
>
> # Comment
> username -soft  server:/export/vol00/users:username
>
> Because the comment explains some details of the user below. How can
I
> use perl to read in a file of usernames then for each match in file1
> do an in line edit using
>
> s/server/another_server/
>
> This way I can ensure the comment above each matching line still
> explains the line below.
>
> Thanks

I wrote this earlier today and wasn't going to post it because I like
the one line solution better, but here it is anyway:

#!/usr/bin/perl

use warnings;
use strict;

open USERS, './usernames.txt' or die "error";
open IN, './file1.txt' or die "error";
my @file1 = <IN>;
my @usernames = <USERS>;
close IN;
chomp @usernames;
for (my $i=0;$usernames[$i];$i++)
{$file1[$i] =~ s/username/$usernames[$i]/g}
open OUT, '>./file1.txt'  or die "error";
print OUT for @file1;

I tried changing to use scalar file handles and 3 argument open:

#!/usr/bin/perl

use warnings;
use strict;

open my $users, './usernames.txt' or die "error";
open my $in, './file1.txt' or die "error";
my @file1 = <$in>;
my @usernames = <$users>;
close $in;
chomp @usernames;
for (my $i=0;$usernames[$i];$i++)
{$file1[$i] =~ s/username/$usernames[$i]/g}
open my $out, '>', './file2.txt'  or die "error";
print $out for @file1; #problem line

and it unexpectedly prints to STDOUT:

GLOB(0x183522c)GLOB(0x183522c)GLOB(0x183522c)

I was also wondering why I can't write

for (my $i=0;$usernames[$i];$i++)
{$file1[$i] =~ s/username/$usernames[$i]/g}

as

$file1[$i] =~ s/username/$usernames[$i]/g
for (my $i=0;$usernames[$i];$i++);

Thanks!

wana



------------------------------

Date: Wed, 02 Feb 2005 22:52:33 GMT
From: "John W. Krahn" <someone@example.com>
Subject: Re: in line editing
Message-Id: <RQcMd.98464$Qb.30530@edtnps89>

ioneabu@yahoo.com wrote:
> I wrote this earlier today and wasn't going to post it because I like
> the one line solution better, but here it is anyway:
> 
> #!/usr/bin/perl
> 
> use warnings;
> use strict;
> 
> open USERS, './usernames.txt' or die "error";
> open IN, './file1.txt' or die "error";
> my @file1 = <IN>;
> my @usernames = <USERS>;
> close IN;
> chomp @usernames;
> for (my $i=0;$usernames[$i];$i++)
> {$file1[$i] =~ s/username/$usernames[$i]/g}
> open OUT, '>./file1.txt'  or die "error";
> print OUT for @file1;
> 
> I tried changing to use scalar file handles and 3 argument open:
> 
> #!/usr/bin/perl
> 
> use warnings;
> use strict;
> 
> open my $users, './usernames.txt' or die "error";
> open my $in, './file1.txt' or die "error";

Those are using "3 argument open"?  Don't you mean:

open my $users, '<', './usernames.txt' or die "error";
open my $in, '<', './file1.txt' or die "error";


> my @file1 = <$in>;
> my @usernames = <$users>;
> close $in;
> chomp @usernames;
> for (my $i=0;$usernames[$i];$i++)
> {$file1[$i] =~ s/username/$usernames[$i]/g}
> open my $out, '>', './file2.txt'  or die "error";
> print $out for @file1; #problem line

Unfortunately perl doesn't DWIM in this case.  You have to explicitly add the 
list after the filehandle:

print $out $_ for @file1;


> and it unexpectedly prints to STDOUT:
> 
> GLOB(0x183522c)GLOB(0x183522c)GLOB(0x183522c)
> 
> I was also wondering why I can't write
> 
> for (my $i=0;$usernames[$i];$i++)
> {$file1[$i] =~ s/username/$usernames[$i]/g}
> 
> as
> 
> $file1[$i] =~ s/username/$usernames[$i]/g
> for (my $i=0;$usernames[$i];$i++);

Because the statement modifier 'for' only works with lists.  You might be able 
to do it with something like this:

$file1[$_] =~ s/username/$usernames[$_]/g for 0 .. $#usernames;



John
-- 
use Perl;
program
fulfillment


------------------------------

Date: Wed, 2 Feb 2005 11:26:18 -0800
From: Steven Kuo <skuo@mtwhitney.nsc.com>
Subject: Re: Invisible cache for LWP / Mechanize?
Message-Id: <Pine.GSO.4.21.0502021121450.15949-100000@mtwhitney.nsc.com>

On 2 Feb 2005, jfix wrote:

> Just thinking:  I am behind a proxy/firewall.  It must be this proxy
> that caches previous results.  Will have to look int ways to force the
> proxy to not return cached responses, but fresh data.
> Any ideas?
> 
> 


First see

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9

Then use HTTP::Headers to construct the appropriate headers;
use HTTP::Request to construct your request.

Use LWP::UserAgent or "Mech" to dispatch your request.

-- 
Hope this helps,
Steven



------------------------------

Date: 2 Feb 2005 13:52:23 -0800
From: clearguy02@yahoo.com
Subject: Parsing files
Message-Id: <1107381143.881020.50480@l41g2000cwc.googlegroups.com>

Hi all,

I have the following scenario.

I have a list of 5 Windows machines and I have a command
"C:\uptime.exe" to see if any of these five machines are not=AD alive.
If
a machine is not alive, it gives an output message "UPTIME w=ADas unable

to connect to host: \\Machine". For instance, the three mach=ADines,
JOHN-2K, ANNA5 and Test machines are not alive and you would=AD see
output file, D:\test6.txt as
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
UPTIME was unable to connect to host: \\JOHN=AD-2K
UPTIME was unable to connect to host: \\ANNA5
UPTIME was unable to connect to host: \\Test
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D


Actual Code:
------------------------------------------------------
open (OUT1, ">D:\\test5.txt") || die " Can not write to the file: $!";

foreach (<DATA>)
{
print OUT1 `c:\\uptime $_\n`;
}
close (OUT1);

open (IN2, "D:\\test5.txt") || die " Can not open the file: =AD$!";
@IN =3D <IN2>;

open (OUT2, ">D:\\test6.txt") || die " Can not write to the =ADfile:
$!";
foreach (@IN)
{
next unless /^\s*UPTIME was unable to connect to host/;
print OUT2 $_;
}
close (OUT2);

__DATA__
BOB-2K
JOHN-2K
SMITH-2
ANNA5
Test
----------------------------------

I know that I have written a lot of redundant code here. How can I
directly parse the first output (in test5.txt) for the line that starts
with "UPTIME was unable to connect to host" string and get only those
lines in the final output file, test6.txt? I think we can avoid the
test5.txt and directly get the desired output into test6.txt.
Thanks,
Rider.



------------------------------

Date: Wed, 02 Feb 2005 23:21:06 +0100
From: Tore Aursand <toreau@gmail.com>
Subject: Re: Parsing files
Message-Id: <gncMd.7143$IW4.153996@news2.e.nsc.no>

clearguy02@yahoo.com wrote:
> I know that I have written a lot of redundant code here. How can I
> directly parse the first output (in test5.txt) for the line that starts
> with "UPTIME was unable to connect to host" string and get only those
> lines in the final output file, test6.txt? I think we can avoid the
> test5.txt and directly get the desired output into test6.txt.

Let me see if I understand you correctly: You want to write the output 
of 'uptime.exe' to a file, but only for those computers that can be 
connected to?

If that is so, I think you should be able to get away with this 
_untested_ script:

   #!/usr/bin/perl
   #
   use strict;
   use warnings;

   my $output  = 'd:/test6.txt';
   my $trigger = '^\s*UPTIME was unable to connect';
   my $program = 'c:/uptime';

   open( OUT, '>', 'd:/test6.txt' ) or die "$!\n";
   foreach ( <DATA> ) {
       print $_ unless ( `$program $_` =~ /$trigger/ );
   }
   close( OUT );

   __DATA__
   BOB-2K
   JOHN-2K
   SMITH-2
   ANNA5
   Test

I have never tested putting variables inside ``, and I have never tested 
checking the output from it directly, either. :-)


-- 
Tore Aursand <tore@aursand.no>
"It's not so much what you have to learn if you accept weird theories,
  it's what you have to unlearn." (Isaac Asimov)


------------------------------

Date: 2 Feb 2005 13:28:12 -0800
From: ioneabu@yahoo.com
Subject: Re: Perl Code which draws camel
Message-Id: <1107379692.167562.249580@z14g2000cwz.googlegroups.com>


> > http://www.thinkgeek.com/tshirts/coder/321a/ (mentioned by another
poster)
>
> If I try the code mentioned there, I get the following, what is going

> wrong here?
>
> ---startoutput---
>
> Newline in left-justified string for sprintf at (eval 1) line 1,
<DATA>
> line 3.
> Newline in left-justified string for sprintf at (eval 1) line 1,
<DATA>
> line 5.
> Newline in left-justified string for sprintf at (eval 1) line 1,
<DATA>
I got it to work ok by commenting out use strict and use warnings.



------------------------------

Date: Wed, 2 Feb 2005 23:55:36 +0100
From: "Tanja" <tanja@verso.co.izbaciovo>
Subject: problem with LWS
Message-Id: <42015ac5@news.s5.net>

Problem with LWP, that don't work on a my web server?
On local disk work, on server don't?
When I try to use LWP , message is: Internal Server Error
Why? What I can do it?

use LWP::Simple; use LWP::Simple;
unless (defined ($cont = get $web_page) { die "could not get $URL\n";}




------------------------------

Date: Wed, 02 Feb 2005 20:49:30 +0100
From: Hendrik Maryns <hendrik_maryns@despammed.com>
Subject: Re: regexp inside <> + typos in perldoc
Message-Id: <8bednR2fcrJVs5zfRVnyug@scarlet.biz>

Anno Siegel schreef:

> Hendrik Maryns  <hendrik_maryns@despammed.com> wrote in comp.lang.perl.misc:
> 
> [...]
> 
> 
>>Apart from this, I sometimes find minor typos in the docs.  Where can I 
>>report those?  Via perlbug seems a bit too strong to me...
>>(e.g.: in perlretut, line 15 of "Using character classes": 'away' should 
>>be 'a way')
> 
> 
> When it's part of the Perl distribution, as perlretut, perlbug is the
> right method.  A patch in "diff -u" format is appreciated -- I think
> perlbug will tell you this again :)

Thanks, I'll have a look at it!

And the people that handle the perlbug reports will have a whole list of 
typos to correct...

H.


------------------------------

Date: Wed, 02 Feb 2005 19:55:56 GMT
From: "PatrickG" <pat@patmail.com>
Subject: Sending/ Receiving SQL arguments to a subroutine
Message-Id: <gfaMd.17141$Q72.1859@tornado.tampabay.rr.com>

Just Another Perl Newbie here - any help much appreciated...

I'm trying to write a subroutines that will call the $dbh, prepare, and
execute SQL statements so that I don't have to keep rewriting the same code.
The problem is that each call to the subroutine(s) will have a different
number of arguments passed and results returned. Is there a way to call a
subroutine not knowing how many arguments to expect??

For example: I want to get a list of all the tables for the current db user
and then truncate those tables.

My code for a known number of arguments is as follows:

my $sqlTables = qq{ SELECT table_name FROM user_tables WHERE table_name not
like 'BIN%'};

my @tables = &getObj($dbh, $sqlTables); # Call subroutine to get the list of
user tables
&runSQL($dbh, q{truncate table }, \@tables, q{}); # Call subroutine to
truncate tables

$dbh->disconnect();

sub getObj ($$) { ##################################################

  my ($DBH, $SQL) = @_;
  my ($obj);
  my (@result) ;
  my $sth = $DBH->prepare($SQL);
  $sth->execute();
  $sth->bind_columns( undef, \$obj );

  while( $sth->fetch() ) {
     push @result, $obj;
  }
  #print "Result: \n @result\n";
  $sth->finish();
  return @result;

}

sub runSQL ($$\@) { ######################################################

  my ($DBH, $preObj, $ref1, $postObj) = @_;
  my @object = @$ref1;
  my $sth;
  my $sql;

  foreach (@object) {
   $sql = $preObj.$_.$postObj;
   #print "$sql\n";
   $sth = $DBH->prepare($sql);
   $sth->execute();
   $sth->finish();
  }
}


The above works fine for that purpose (truncating tables), but I also want
to disable constraints, which means that for the getObj routine, I will need
to return 2 results (table_name and constraint_name), and pass those two
arguments to runSQL. For another situation, I may need more arguments
passed/ returned. Any idea how to have a single routine to do this without
knowing the number of args?? I was thinking to concat the args with a
delimiter prior to returning from getObj, and then parsing the args within
the runSQL, but that's a little over my head at this point.

TIA for any advice!
patrick




------------------------------

Date: Wed, 02 Feb 2005 12:55:33 -0800
From: Jim Gibson <jgibson@mail.arc.nasa.gov>
Subject: Re: Sending/ Receiving SQL arguments to a subroutine
Message-Id: <020220051255338425%jgibson@mail.arc.nasa.gov>

In article <gfaMd.17141$Q72.1859@tornado.tampabay.rr.com>, PatrickG
<pat@patmail.com> wrote:

> Just Another Perl Newbie here - any help much appreciated...
> 
> I'm trying to write a subroutines that will call the $dbh, prepare, and
> execute SQL statements so that I don't have to keep rewriting the same code.
> The problem is that each call to the subroutine(s) will have a different
> number of arguments passed and results returned. Is there a way to call a
> subroutine not knowing how many arguments to expect??

Yes. See perldoc perlsub and don't use prototypes to declare the number
of arguments. Then, any number of arguments you pass will show up in
the @_ array. $#_ gives the number of arguments, but you can just shift
arguments from the front of the @_ array until it is empty.

For example, you can write your subroutine thusly if you are always
passing it two arguments followed by zero or more optional arguments:

sub getObj
{
   my $DBH = shift;
   my $SQL = shift:
   while( @_ ) {
      my $table = shift;
      # process table
   }
}


----== Posted via Newsfeeds.Com - Unlimited-Uncensored-Secure Usenet News==----
http://www.newsfeeds.com The #1 Newsgroup Service in the World! >100,000 Newsgroups
---= East/West-Coast Server Farms - Total Privacy via Encryption =---


------------------------------

Date: 2 Feb 2005 13:07:19 -0800
From: "nobull@mail.com" <nobull@mail.com>
Subject: Re: Sending/ Receiving SQL arguments to a subroutine
Message-Id: <1107378439.872156.208730@l41g2000cwc.googlegroups.com>

PatrickG wrote:
> Just Another Perl Newbie here - any help much appreciated...
>
> I'm trying to write a subroutines that will call the $dbh,
> prepare, and execute SQL statements so that I don't have to
> keep rewriting the same code.

A laudable aim but DBI provides those already, you know.
(selectall_arrayref etc)

> The problem is that each call to the subroutine(s) will
> have a different number of arguments passed and results
> returned. Is there a way to call a subroutine not knowing
> how many arguments to expect??

This is the default behaiour in Perl unless you specify a prototype to
disable it.

> For example: I want to get a list of all the tables for the current
db user
> and then truncate those tables.
>
> My code for a known number of arguments is as follows:
>
> my $sqlTables = qq{ SELECT table_name FROM user_tables WHERE
table_name not
> like 'BIN%'};
>
> my @tables = &getObj($dbh, $sqlTables); # Call subroutine to get the
list of
> user tables
> &runSQL($dbh, q{truncate table }, \@tables, q{}); # Call subroutine
to
> truncate tables
>
> $dbh->disconnect();
>
> sub getObj ($$) { ##################################################
>
>   my ($DBH, $SQL) = @_;
>   my ($obj);
>   my (@result) ;
>   my $sth = $DBH->prepare($SQL);
>   $sth->execute();
>   $sth->bind_columns( undef, \$obj );
>
>   while( $sth->fetch() ) {
>      push @result, $obj;
>   }
>   #print "Result: \n @result\n";
>   $sth->finish();
>   return @result;
>
> }

The above is basically selectcol_arrayref - except it returns a list
rather than an arrayref.  Generally it is better to return arrays from
subroutines as references rather than unrolling them into lists.  (See
'perldoc perlsub').

> sub runSQL ($$\@) {
######################################################
>
>   my ($DBH, $preObj, $ref1, $postObj) = @_;

Your prototype has only 3 arguments yet here you expect 4.  $ref1 is a
bad name for a variable.

>   my @object = @$ref1;

What do you imagine is the purpose of the @object variable?

>   my $sth;
>   my $sql;

You are suffering from premature declaration.  You should declare all
variables in the smallest applicable scope.

>   foreach (@object) {

Why didn't you just iterate over @$ref1 directly?

>    $sql = $preObj.$_.$postObj;

This is the first place you use $sql so this is the place you should
declare it.

>    #print "$sql\n";
>    $sth = $DBH->prepare($sql);

This is the first place you use $sth so this is the place you should
declare it.

>    $sth->execute();
>    $sth->finish();
>   }
> }

Since you are not fetching anything it would be simpler to use the do()
method.

$sql->do("$preObj$_$postObj") for @$ref1;

>
> The above works fine for that purpose (truncating tables), but I also
> want to disable constraints, which means that for the getObj routine,
> I will need to return 2 results (table_name and constraint_name), and
> pass those two arguments to runSQL. For another situation, I may need
> more arguments passed/ returned. Any idea how to have a single
routine
> to do this without  knowing the number of args??

The general solution to cope with variable number of things is to pass
about array reference and iterate over arrays.  If you want a list of
tuples the natural data type is an array of arrays or an array of
hashes.  DBI's selectall_arrayref can return the rowset result of an
SQL statement in either of these forms.

> I was thinking to concat the args with a delimiter

Oh for $DEITY's sake no! This is Perl not bourne shell!  Perl has higer
level data strucutres (arrays and hashes) - use them, do not simulate
them with string manipulations.

> TIA for any advice!

Less is more.



------------------------------

Date: Wed, 02 Feb 2005 16:33:16 -0500
From: Sherm Pendley <spamtrap@dot-app.org>
Subject: Re: Sending/ Receiving SQL arguments to a subroutine
Message-Id: <ev-dnShkDJiB2pzfRVn-sQ@adelphia.com>

You've gotten some good suggestions, but I had to ask:

PatrickG wrote:

> my @tables = &getObj
 ...
> &runSQL

> sub getObj ($$)
 ...
> sub runSQL ($$\@)

What's the point in prototyping subs, if you're simply going to tell Perl to
ignore the prototypes?

sherm--

-- 
Cocoa programming in Perl: http://camelbones.sourceforge.net
Hire me! My resume: http://www.dot-app.org


------------------------------

Date: 2 Feb 2005 22:40:31 GMT
From: "mjl69" <mjl69mjl69@myaccmyacc.net>
Subject: Re: stop extra lines from printing
Message-Id: <36d36vF4u7njeU1@individual.net>

pauliecat@sasktel.net wrote:

> having all sorts of problems extracting the data. The file I am
> extracting on is library catalog records.  For instance sometimes I
> get the subject printing in the wrong record, or blank lines between
> each subject (some records have more than one subject field)
> 
> eg:  Author   Joe Blow
> Title    Fishing in a coal mine
> SUBJ     Fishing
> SUBJ     Coal mines
> 
> I'll get results like this
> Author  Joe Blow
> Title   Fishing in a coal mine
> SUBJ    Fishing
> 
> SUBJ    Coal mines
> 
> I'd like to be able for instance keep things together and then have a
> blank line between the last element of the first record and a space
> between the start of the next record: Here is the script
> 
> my $title;
> my $author;
> my $call;
> my $subj;
> 
> for my $line (@lines)
> {
> $line =~ TITLE and $title = $line;
> $line =~ AUTHOR and $author = $line;
> $line =~ CALL and $call = $line;
> $line =~ SUBJ and $subj = $line;
> #$line =~ /did not find/ and print $title,$line,"\n";
> $line =~ PUB and print $title,$author,$call,$subj,$line,"\n";
> 
> }

seems like a similar problem to reading e-mail headers.


------------------------------

Date: 2 Feb 2005 13:06:31 -0800
From: ioneabu@yahoo.com
Subject: Re: Uninitialised value error stumping me..
Message-Id: <1107377399.361040.104550@z14g2000cwz.googlegroups.com>


Len wrote:
> Hi
>
> I am a newbie so be kind ;) The code below is used to process the
data
> below it. The code works fine on some larger data of identical (I
> believe) format, however on this small data it throws the error:
>
> "Use of uninitialized value in join or string at report13a.txt line
> 16, <> line 7"
>
> Any help would be great - I'm sure it's something easy but it's
> driving me crazy...
>
> Thanks
> Len
>
> ----------
>
> #! perl -w
> use strict;
>
> my ($line, @fields, $refdes, @symbol, $count);
> $refdes = "NEW"; #refdes enables symbol count
> $symbol[0] = "EMPTY";
>
> while ($line = <>){
>
> 	chomp($line);
> 	next if $line =~ /(^A|^J|MECHANICAL)/; #drop out if begins with A or
> J or includes Mechanical
> 	@fields = split /!/, $line; #Change separator
>
> 	if (($refdes eq "new")||($fields[1] ne $refdes)){ #New refdes
> 		$count = 0; #Reset counter
> 		print "$refdes array is:@symbol\n"; #Print previous refdes symbol
> array
> 		$refdes = $fields[1]; #Reset refdes
> 		@symbol = (); #Reset symbol array
> 		$symbol[0] = $fields[2]; #Put symbol name at front of array
> 		}
>
> 	else{
> 		$count++;
> 		$symbol[$count] = $fields[4];

How do you know @fields has 5 elements to address?  Your first line of
data only has 4 items.  You could check it like this:

$symbol[$count] = $fields[4] if $fields[4];

but that may not solve your overall problem.

> 		}
> }
>
> print "Final $refdes array is: @symbol\n"; #Print final symbol array
>
> -------------
>
> A!REFDES!SYM_NAME!GRAPHIC_DATA_7!
> J!C:\PCB_DATA_DUMP\test.brd!Mon Jan 31 12:46:35
>
2005!-75.000!-170.000!425.000!190.000!0.001!millimeters!TOP_LEVEL!31.496063
> mil!2!UP TO DATE!
> S!CN5!MTG_2_40CP1_70!used:01BAiss2/USB programmer!
> S!CN5!MTG_2_40CP1_70!rev:1,NJH,28/09/04!
> S!CN5!MTG_2_40CP1_70!1.700!
> S!CN5!MTG_2_40CP1_70!2.400!
> S!CN6!CONN_UMP_3MM_SMT!PACKAGE!sym.req:0554!
> S!CN6!CONN_UMP_3MM_SMT!PACKAGE!lib.name:conn_ump_3mm_smt!
> S!CN6!CONN_UMP_3MM_SMT!PACKAGE!height:3.00mm!
> S!CN6!CONN_UMP_3MM_SMT!PACKAGE!used:01ATiss1/Whitney RF!
> S!CN6!CONN_UMP_3MM_SMT!PACKAGE!rev:2,NJH,26/05/04!
> 
> --------------



------------------------------

Date: Wed, 2 Feb 2005 08:35:35 -0600
From: Tad McClellan <tadmc@augustmail.com>
Subject: Re: what does each file do in webmin?
Message-Id: <slrnd01p9n.4ev.tadmc@magna.augustmail.com>

Roll <lie_huo@hotmail.com> wrote:

> hi can anyone here tell me 


We discuss Perl programming here.


> what does each file in the dhcp folder of the
> webmin do ?? 


What is your Perl question?


-- 
    Tad McClellan                          SGML consulting
    tadmc@augustmail.com                   Perl programming
    Fort Worth, Texas


------------------------------

Date: Wed, 2 Feb 2005 08:37:34 -0600
From: Tad McClellan <tadmc@augustmail.com>
Subject: Re: x-www-form-urlencoded
Message-Id: <slrnd01pde.4ev.tadmc@magna.augustmail.com>

Brian Wakem <no@email.com> wrote:

> From: Brian Wakem <no@email.com>


Still using that "make me invisible" address I see...


-- 
    Tad McClellan                          SGML consulting
    tadmc@augustmail.com                   Perl programming
    Fort Worth, Texas


------------------------------

Date: 6 Apr 2001 21:33:47 GMT (Last modified)
From: Perl-Users-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin) 
Subject: Digest Administrivia (Last modified: 6 Apr 01)
Message-Id: <null>


Administrivia:

#The Perl-Users Digest is a retransmission of the USENET newsgroup
#comp.lang.perl.misc.  For subscription or unsubscription requests, send
#the single line:
#
#	subscribe perl-users
#or:
#	unsubscribe perl-users
#
#to almanac@ruby.oce.orst.edu.  

NOTE: due to the current flood of worm email banging on ruby, the smtp
server on ruby has been shut off until further notice. 

To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.

#To request back copies (available for a week or so), send your request
#to almanac@ruby.oce.orst.edu with the command "send perl-users x.y",
#where x is the volume number and y is the issue number.

#For other requests pertaining to the digest, send mail to
#perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
#sending perl questions to the -request address, I don't have time to
#answer them even if I did know the answer.


------------------------------
End of Perl-Users Digest V10 Issue 7727
***************************************


home help back first fref pref prev next nref lref last post