欢迎光临
我们一直在努力

Perl生成文件或者文件夹的权限、属主

#!/usr/bin/perl

use strict;
use warnings;

##生成目录放到一个临时文件,然后根据这个文件生成权限。
##find /usr -type d -ls |awk ‘{print $11}’ > test_dir.txt

my $filename = ‘test_dir.txt’; 
open(my $fh, $filename) or die “Could not open file ‘$filename’ $!”;

while (my $row = <$fh>) {
  chomp $row;
  my $chmod_line=`stat $row|grep Uid|awk -F\’\(\’ \'{print \$2\}\’|awk -F\/ \'{print \$1\}\’`;
  my $user_name=`stat $row|grep Uid|awk -F'(‘ ‘{print \$3}’|awk -F\/ ‘{print \$2}’|awk -F’)’ ‘{print \$1}’`;
  my $group_name=`stat $row|grep Uid|awk -F’/’ ‘{print \$4}’|awk -F’)’ ‘{print \$1}’`;
  
  chomp $chmod_line;
  chomp $user_name;
  chomp $group_name;
  
  
  $user_name =~ s/^\s+|\s+$//g;
  $group_name =~ s/^\s+|\s+$//g;

  print “mkdir -p $row\n”;

  print “chmod $chmod_line $row \n”;
  print “chown $user_name:$group_name $row \n”;

}

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。