perl



#
# open csv file and print second field
#

open(IN,"test2.csv") or die "can not open";
while(<IN>){

	@tmparray=split(/,/,$_);

	print $tmparray[1]."\n";
}
close(IN);






#   perl の配列の要素は $temparray[1] のように使う。配列だからと言って
#   @temparray[1] のように使うわけではない。


#-----------------
#fileのオープン

open(IN,"sample.csv");
while(<IN>){

     @tmparray=split(/,/,$_);
     print $tmparray[6],"\n";  

}
close(IN);


#------------------
#csvファイルを開いて8番フィールドにkoizumiという文字列を含む行を出力--------
#
open(IN,"sample.csvt");
while (<IN>){

	@tmparray=split(/,/,$_);
	
	if( $tmparray[8] =~/koizumi/){print $tmparray[2].$tmparray[6].$tmparray[7].$tmparray[8]."\n";}
}
close(IN);
#------------------


# awk でよくやるような$1の先頭文字が#でなければ $2 をプリントする場合 $, = ' '; # set output field separator $\ = "\n"; # set output record separator while (<>) { ($Fld1,$Fld2) = split(' ', $_, 9999); if (substr($Fld1, 1, 1) ne '#') { print $Fld2; } }
#---FTPでファイルをgetする--- # #!/usr/bin/perl -w # file: ftp_recent.pl use Net::FTP; use constant HOST => 'www.xxx_host_xxx.or.jp'; use constant DIR => '/'; use constant FILE => 'index.html'; my $ftp = Net::FTP->new(HOST) or die "could not connect: $@\n"; $ftp->login('xxx_user_xxx','xxx_password_xxx') or die $ftp->message; $ftp->get(FILE) or die $ftp->message; $ftp->quit; warn "File retrieved successfully.\n";
#以下のスクリプトは試したがうまく動かなかった。 #!/usr/bin/perl # file: remoteps.pl user strict; use NET::Telnet; use constant HOST => '192.168.0.4'; use constant USER => 'userxxx'; use constant PASS => 'passxxx'; my $telnet = NET::Telnet->new(HOST); $telnet->login(USER,PASS); my @lines = $telnet->cmd('ps -ef'); print @lines;


# seiki hyougen wo tsukatta sample
# read in sample.txt

open(IN,"sample.txt");
while (<IN>){

print $_;

#$a="abcdefghi";

if ( $_ =~ /(([0-9A-Z][0-9A-Z]*)_[0-9],)*[0-9A-Z][0-9A-Z]*_[0-9]$/ ){ print "match\n"; 
	$reply = 1;
}
	else{ print "not match\n"; 
	$reply = 0;
	
	}
}
close(IN);

exit $reply;





print "Enter target Paasword:";
$target=;
chop($target);
$key=substr($target,0,2);
while(<>){

	chop;
	$pass= crypt($_,$key);
	if($target eq $pass){
		print "\nHit! $target is $_\n";
		last;
	}
	print ".";
}



#
# 2005.10.30(sun)
# read every line of text file , and grep (or sort ) ,print out
# 1行ずつ読み込んでgrepして出力する。

$count = 0;

while( $line = <> ){

	$all[$count] = $line;

	$count = $count +1 ;
}

# @result = sort @all;
  @result = grep /610/, @all;


for( $i = 0; $i < $#result + 1 ; $i = $i + 1) {
	print $result[$i];
}





$eq_result = $a eq $b ;      # $a と$b が等しいかどうか
$ne_result = $a eq $b ;      # $a と$b が等しくないかどうか  
$cmp_result = $a eq $b ;     # $a と$b を比較する




−逆順にソートする

@result = sort { $b cmp $a } @all;


−数字として認識して大小の比較を行う

@result = sort { $a <=> $b } @all;


−数字として認識して大小の比較を行う

@result = sort { length($a) <=> length($b) } @all;




短いスクリプト(読み込んでgrepして出力)

@all = <>
@result = grep /hoge/, @all;
print @result;




index.html
perl_00.htm
linux.htm
cofe_arabi 20050917