view symlink.pl @ 16:457d7aa2cb2f default tip

from oleander PowerBookG4.
author kent <kent@cr.ie.u-ryukyu.ac.jp>
date Fri, 12 Mar 2010 16:58:46 +0900
parents 6d5c73fe5744
children
line wrap: on
line source

#!/usr/bin/perl
use Cwd;
use Cwd 'abs_path';

main(  );

sub main {

	if ( $ARGV[0] eq "-a" ){
		my @dots1 = list_all(".");
		@dots = grep { /^DoT-/ } @dots1;
	}else{
		@dots = @ARGV;
	}

	foreach $dot (@dots){
		$abs_dot = abs_path($dot);
		make_link($abs_dot);
		#print "$abs_dot\n";
	}
}

sub list_all {
	my $cdir = $_[0];

	opendir(DIR, "$cdir") || die "can't opendir $some_dir: $!";

	#@dots = grep { /^DoT-/ && -f "$cdir/$_" } readdir(DIR);
	@dots = readdir(DIR);
	closedir DIR;

	return @dots;
	#return wantarray ? () : undef;
}


### 引数に渡された絶対パスへのリンクをホームディレクトリに作る
sub make_link {

    my $file = $_[0]; ## fileは絶対パス

    ($dest) = ($file =~ m/DoT-(.+)$/);
    if ($dest) {
	print "ln -s $file $ENV{HOME}/.$dest\n";
	system "ln -s $file $ENV{HOME}/.$dest";
    }


    #($dest = $file) =~ s/DoT-/./;
    #$dest =~ s/DoT-/./;
    #print "ln -s $file $ENV{HOME}/$dest\n";
    #system "ln -s $file $ENV{HOME}/$dest";
}