CGI-BBS > CGI > Perl > Perlについてフォルダをコピーしたい。


カレッヂ
カレッヂ


質問者 小野塚貴弘  投稿日 2004/6/28(月) 03:04:42
毎度です。
既存のフォルダを中身ごとコピーして違う名前で設置する方法が分かりません。
何か簡単でよい方法ありませんでしょうか。

プロバイダ参照:http://www.zyforce-inc.com/
サーバのOS:UNIXサーバ
パソコンのOS:WinNT系
エディタ:MKEditor
FTPソフト:NextFTP
サーバ移転:していない
改造:していない
CGI習熟度:advanced

回答者 sim  [削除]  投稿日 2004/6/29(火) 12:10:44
system("cp -r dir/ dir2/");

こんなのはいかがでしょう?
サーバ環境次第では動かないかもですが。
質問者 小野塚貴弘  [削除]  投稿日 2004/6/29(火) 12:59:16

'cp' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。

となりました。
他にはどんな方法がありますでしょうか?

スクリプトは下記の通りです。
****************************************************
require  './jcode.pl';

use CGI qw(:standard);


#初期設定

( $sec , $min , $hour , $day , $mon , $year ) = localtime( time );
$mon++;
$year += 1900;
$id = sprintf("usr%04d%02d%02d%02d%02d%02d",$year,$mon,$day,$hour,$min,$sec);

system("cp -r defult/ $id/");

print "設置完了";
****************************************************
回答者 sim  [削除]  投稿日 2004/6/29(火) 13:44:05
これはどうでしょう?

****************************************************
require  './jcode.pl';

use CGI qw(:standard);


#初期設定

( $sec , $min , $hour , $day , $mon , $year ) = localtime( time );
$mon++;
$year += 1900;
$id = sprintf("usr%04d%02d%02d%02d%02d%02d",$year,$mon,$day,$hour,$min,$sec);

mkdir($id,0755);
system("xcopy defult $id");

print "設置完了";
****************************************************
質問者 小野塚貴弘  [削除]  投稿日 2004/6/29(火) 15:30:34
ありがとうございました。
ちなみに、このCGIをdefultと一緒にしてadminに設置し、コピーする際にusrフォルダーに
コピーしたい場合はどのようにしたらよいのでしょう。

分かりやすくいうとこんな感じです

mkdir(../usr/$id,0755);
system("xcopy defult ../usr/$id");
↑これではできませんでした。

よろしくお願いいたします。
回答者 sim  [削除]  投稿日 2004/6/29(火) 16:35:50
$id = sprintf("c:\www\usr\%04d%02d%02d%02d%02d%02d",$year,$mon,$day,$hour,$min,$sec);

などとすれば出来る気がします。

返信(回答)する

 


Web裏技