in reply to Copying a file across servers in DOS
You can run external commands in Perl with system(), exec() or backticks/qx():-
# Note escaped slashes! system("xcopy dos.bat \\\\machine.b\\share\\")
You might also find the Shell module useful, as it will allow you to use xcopy as if it were a Perl command:-
use Shell qw(xcopy); xcopy("dos.bat", "\\\\machine.b\\share\\");
However, Perl does support UNC-style paths (if your OS does), so you could use plain ol' open() or a more elaborate (robust?) wrapper like File::Copy:-
open LOCAL, "dos.bat" or die $!; open REMOTE, "//machine.b/share/dos.bat" or die $!; print REMOTE <LOCAL>; use File::Copy; copy("dos.bat", "//machine.b/share/dos.bat") or die $!;
(Note that the native Perl calls support the alternate use of forwardslashes, which will save you from excessive escaping of UNC paths.)
--k.
|
---|
In Section
Seekers of Perl Wisdom