in reply to Re: Re: Please help - problem with script on Win2K
in thread Please help - problem with script on Win2K

Yes, you need use POSIX;. It's part of the standard distribution, so there's not installation to be done.

Sorry! I should have mentioned it or added the line to the code.


Cor! Like yer ring! ... HALO dammit! ... 'Ave it yer way! Hal-lo, Mister la-de-da. ... Like yer ring!

Replies are listed 'Best First'.
Re: Re: Re: Re: Please help - problem with script on Win2K
by Anonymous Monk on Sep 18, 2002 at 21:16 UTC
    Thanks for your help! I put in use posix; and it did something. When the script finished running I don't know where it created and took the logs file??? Is there a way I can create the time stamped folder in the current directory? I.E, (my $filedir = "\\\\10.1.1.5\\Weblogiclogs";)

      You need to use the absolute path in both the mkdir call and the rename call. the following two lines will make the the script current working directory (cwd) the directory you specify. You'll also not that I have used forward slashes rather than doubled backslashes. The result is the same, but this is rather more readable I think. This will work for all pathnames within Perl, even on Win32 (and other DOS-like systems as the pod would have it:).

      use Cwd 'chdir'; chdir '//10.1.1.5/Weblogiclogs';

      Alternatively, simply prepend the directory name to the filename as in

      my $createdir = '//10.1.1.5/Weblogiclogs' . strftime( '%y%d%e%H%M%S', +localtime);

      As for where the directory you created was created and the files moved to, that will depend what the cwd was at the time. If you had run the script from the command line, it would have been the same as the directory you were in when you ran it? At least under any circumstances I can think of.

      As for where the directory/files that you created/moved are - probably the easiest way to find them would be to use the Start->Find...->Files or Folders... option and enter the name of the directory you created.


      Cor! Like yer ring! ... HALO dammit! ... 'Ave it yer way! Hal-lo, Mister la-de-da. ... Like yer ring!
        Hi There, As per you recomendation, I redid the code. It creates the folder in the location I want with time stamp, but I can not move the logs in the "weblogiclogs" directory into the newly created folder. Am I doing anything wrong? Please help! Thanks again for your help! I'm new to perl but learning from your wisdom! use POSIX; my $createdir = '\\\\10.1.1.5\\Weblogiclogs\\' . strftime( '%y%m%d%H%S', localtime); my $logs = '\\\\10.1.1.5\\Weblogiclogs\\*.log'; { mkdir $createdir or die "Couln't create $createdir because $!($^E)\n"; } sub moveLog { move($logs, $createdir) or die "error moving $logs reason $!($^E)"; }