Perlゼミ

  1. Perl
  2. ファイル操作
  3. here

ファイルをコピーする

ファイルをコピーするにはFile::Copyモジュールのcopy関数を使用します。成功すれば真が、失敗すれば偽が返ります。またcopy関数が失敗すれば、$!にエラーの内容が、格納されます。

use File::Copy 'copy';
copy $file, $copy_name;

ファイルをディレクトリの中にコピーすることもできます。

use File::Copy 'copy';
copy $file, $dir;

サンプル

ファイルをコピーするサンプルです。

use strict;
use warnings;
use Fcntl;
use File::Copy 'copy';

# ファイルをコピーする。
my $file = "sample_20080521_$$.txt";
my $dir = "dir_20080521_$$";

# 準備 ファイルとディレクトリの作成
sysopen( my $fh, $file, O_WRONLY | O_CREAT | O_EXCL )
  or die "$file を作成することができません。: $!";
close $fh;
print "準備: '$file'が作成されました。\n";

mkdir $dir
  or die "$dir を作成することができません。 : $!";
print "準備: '$dir'が作成されました。\n\n";

print "1. ファイルをコピーする。\n";
my $copy_name = "$file.copy";
if (copy $file, $copy_name) {
  print "$file は、 $copy_name にコピーされました。\n\n";
}
else {
  warn "$file を $copy_name にコピーできません。$!";
}

print "2. ファイルをディレクトリにコピーする。\n";
if (copy $file, $dir) {
  print "$file は、 $dir にコピーされました。\n\n";
}
else {
  warn "$file を $dir にコピーできません。: $!";
}

(参考)sysopen関数Fcntl

Perlの書籍
  • 初めてのPerl 第7版

    Perl入門 定番の一冊
  • 業務に役立つPerl

    ログ解析など日本語を含むテキスト処理の実践!
  • 詳説 正規表現

    正規表現の詳細な解説
  • Perlの書籍販売 14冊 »
自己紹介
木本裕紀(きもとゆうき)

Twitter

フォロー、いいね、リツート、コメント歓迎

Youtube

チャンネル登録、いいね、コメント歓迎
Perlの求人広告募集中