You can avoid a temporary file by using a filehandle opened on a scalar:
my $msg = <STDIN>; open(my $msg_fh,"<",\$msg) or die "Couldn't create scalar filehandle: $!\n"; my $file = "msg_".time.".txt"; # ... $host->put($msg_fh,$file) or die "cannot put file: ", $host->message, $/;

Both of these versions may overwrite an existing file on the remote server, although it's not likely. I thought maybe using put_unique would help, but there doesn't seem to be a way to force the filename to end with .txt (at least with my FTP server).

Update: Fixed error in open statement, and lack of error checking that let that slip through. Also, this seems to miss the last byte of the string entered for some reason. I'm looking into it right now...

Update: The missing byte happens on my system with grinder's code, too. It looks like a bug in Net::FTP::A.

Update: This is CPAN RT Bug #25019.


In reply to Re^2: Send/Upload some text as *.TXT on FTP by sgifford
in thread Send/Upload some text as *.TXT on FTP by xoddam

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.