Perlテックラボ

ファイルのコピー

2009年8月21日

Perlにはmkdir()やrmdir()、unlink()といったディレクトリの作成や削除関連の関数は用意されているのですが、ファイルコピーに関する関数は用意されていません。そのため、system()を使ってシステムのコマンドを呼び出すか、モジュールを使う必要があります。

system()からシステムのcpコマンドを呼び出した場合
system("cp ./a.csv ./b.csv");

モジュールを使う場合は、デフォルトでインストールされているFile::Copyが便利です。File::Copyにはcopy()、move()、syscopy()、rmscopy()が用意されています。

File::Copyモジュールを使った場合
use File::Copy;
copy("./a.csv","./b.csv") or die "error: $!";

copy()の実行でエラーが発生すると、$! にエラー内容が格納されます。

任意のディレクトリにコピーしたい際は、第2引数にディレクトリを指定します。

use File::Copy;
copy("./a.csv","/var/www/html/bk");
参考

関連記事

Comment

コメントを残す

メールアドレスが公開されることはありません。

リズムファクトリーはホームページの制作会社です。
ホームページ制作に関するご要望・ご相談はこちらからどうぞ。