関数順 インデックス
目的別 インデックス

構文
 
 chown 引数
引数
ユーザーID,グループID,ファイル名1,ファイル名2,……, ファイル名n

返り値
 
 所有者の変更に成功したファイルの数

説明

  • ファイルの所有者を変更します。引数の最初でuid(ユーザID),二番目でgid(グループID)を指定します。それ以降にファイル名を指定します。変更の成功したファイルの数を返します。
  • uidとgidのどちらか片方だけを変更したい場合,変更したくない方の値に-1を指定すると,片方だけ変更することができます。
  • エラーが発生した場合,$!にエラー情報がセットされます。

使用例

ファイルaaa.txtとbbb.txtの所有者のユーザIDとグループIDをぞれぞれ501,501に変更する
#!/usr/bin/perl
use strict;
use warnings;

my $uid = 501;
my $gid = 501;
my @files = ('aaa.txt', 'bbb.txt');

my $ret = chown $uid, $gid, @files;
print "$retファイルの所有者を変更しました。\n";
ファイルaaa.txtとbbb.txtの所有者のユーザIDを501に変更する(グループIDは変更しない)
#!/usr/bin/perl
use strict;
use warnings;

my $uid = 501;
my $gid = -1;
my @files = ('aaa.txt', 'bbb.txt');

my $ret = chown $uid, $gid, @files;
print "$retファイルのユーザIDを変更しました。\n";
ファイルaaa.txtとbbb.txtの所有者のグループIDを501に変更する(ユーザIDは変更しない)
#!/usr/bin/perl
use strict;
use warnings;

my $uid = -1;
my $gid = 501;
my @files = ('aaa.txt', 'bbb.txt');

my $ret = chown $uid, $gid, @files;
print "$retファイルのグループIDを変更しました。\n";
ファイルaaa.txtの所有者のユーザIDとグループIDをぞれぞれ501,500に変更し,実行結果を出力する
#!/usr/bin/perl
use strict;
use warnings;

my $uid = 501;
my $gid = 500;
my $file = 'aaa.txt';

my $ret = chown $uid, $gid, $file;
if ($ret == 1) {
  print "ファイルの所有者を変更しました。\n";
} else {
  print "ファイルの所有者を変更できませんでした。$!\n";
}