<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1861342631953197839</id><updated>2012-02-16T12:05:05.221-08:00</updated><category term='linux'/><category term='perl'/><title type='text'>teck power</title><subtitle type='html'>Here I list the websites that greatly inspired and helped me during my learning of linux and pieces from me that I hope would help others.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://teckpower.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://teckpower.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>chenyang</name><uri>http://www.blogger.com/profile/01505859320096526309</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>6</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1861342631953197839.post-3222242555502471246</id><published>2009-02-15T20:09:00.000-08:00</published><updated>2009-02-15T21:55:45.220-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>perl script for webcam</title><content type='html'>Following is a perl script that I wrote to take and upload snapshots from webcam.&lt;br /&gt;Use crontab to execute this script hourly.&lt;br /&gt;&lt;br /&gt;streamer is from a cool package xawtv.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;=========================================&lt;br /&gt;&lt;br /&gt;#!/usr/bin/perl -w&lt;br /&gt;#Capture imgs from webcam and upload it to ftp&lt;br /&gt;#Author: Chenyang&lt;br /&gt;#Email: higooday at gmail.com&lt;br /&gt;#&lt;br /&gt;#bug:somehow,the first img taken by streamer is never complete. &lt;br /&gt;#So I only upload from the second one. &lt;br /&gt;#If you know how to solve it, please teach me.&lt;br /&gt;#&lt;br /&gt;use strict;&lt;br /&gt;use Net::FTP;&lt;br /&gt;&lt;br /&gt;my $user="xxxx";                          ##user name for ftp &lt;br /&gt;my $pass="xxxx";                          ##passwd for ftp&lt;br /&gt;my $host="www";                 ##ftp site&lt;br /&gt;my $ftp_dir="xxx";           ##directory at ftp site for picture uploading&lt;br /&gt;my $shot=6;                                   ##number of shots taken&lt;br /&gt;my $interval=1;                               ##number of shots in one second&lt;br /&gt;my $file_prefix=hour();&lt;br /&gt;my $file_name=$file_prefix."_0.jpeg";&lt;br /&gt;my $working_dir="/home/yourname/xxxx";&lt;br /&gt;chdir $working_dir; # change working directory, important if executed by crontab&lt;br /&gt;&lt;br /&gt;system ("streamer -t $shot -r $interval -o $file_name");&lt;br /&gt;ftp ("put",$file_prefix,$shot,$user,$pass,$host,$ftp_dir);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;######################&lt;br /&gt;sub ftp {&lt;br /&gt;    my ($method, $file_prefix,$shot,$user,$pass,$host,$ftp_dir) = @_;&lt;br /&gt;&lt;br /&gt;    my $ftp = Net::FTP-&gt;new($host, Debug =&gt; 0);&lt;br /&gt;    $ftp-&gt;login($user, $pass) or die "ERROR - FTP login failed: ", $ftp-&gt;message;&lt;br /&gt;    $ftp-&gt;binary;  #switch to binary transfer mode&lt;br /&gt;    $ftp-&gt;cwd($ftp_dir);&lt;br /&gt;    if ($method eq "put") {&lt;br /&gt;        for (my $i=1;$i&lt;6;$i++)&lt;br /&gt;        {&lt;br /&gt;          my $file_name=$file_prefix."_".$i.".jpeg";&lt;br /&gt;          $ftp-&gt;put($file_name) or die "ERROR - FTP put failed: ", $ftp-&gt;message;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    elsif ($method eq "get") {&lt;br /&gt;        $ftp-&gt;get($file_name) or die "ERROR - FTP get failed: ", $ftp-&gt;message;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    $ftp-&gt;quit;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;sub hour {&lt;br /&gt;    my ($sec, $min, $hour, $day, $month, $year) = (localtime)[0, 1, 2, 3, 4, 5];&lt;br /&gt;    my $time = $hour;&lt;br /&gt;    return $hour;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1861342631953197839-3222242555502471246?l=teckpower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://teckpower.blogspot.com/feeds/3222242555502471246/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://teckpower.blogspot.com/2009/02/perl-script-for-webcam.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/3222242555502471246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/3222242555502471246'/><link rel='alternate' type='text/html' href='http://teckpower.blogspot.com/2009/02/perl-script-for-webcam.html' title='perl script for webcam'/><author><name>chenyang</name><uri>http://www.blogger.com/profile/01505859320096526309</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1861342631953197839.post-3237453136527954625</id><published>2009-02-15T12:24:00.000-08:00</published><updated>2009-02-15T22:02:45.463-08:00</updated><title type='text'>FTP backup script</title><content type='html'>Perl Net::FTP:&lt;br /&gt;&lt;A href="http://aplawrence.com/Unixart/perlnetftp.html"&gt;http://aplawrence.com/Unixart/perlnetftp.html&lt;/A&gt;&lt;br /&gt;Remotebackup.pl:&lt;br /&gt;&lt;A href="http://www.goldb.org/remotebackup.html"&gt;http://www.goldb.org/remotebackup.html&lt;/A&gt;&lt;br /&gt;Crontab: a simple text file that holds a list of commands that are to be run at specified times&lt;br /&gt;&lt;A href="http://ubuntuforums.org/showthread.php?t=102625"&gt;http://ubuntuforums.org/showthread.php?t=102625&lt;/A&gt;&lt;br /&gt;&lt;br /&gt;My simple script for backup&lt;br /&gt;===============================&lt;br /&gt;#!/usr/bin/perl -w&lt;br /&gt;#This is the backup script from Chenyang, version 0.1&lt;br /&gt;#Questions please contact Chenyang: higooday@gmail.com&lt;br /&gt;#use strict;&lt;br /&gt;#use warnings;&lt;br /&gt;#definitions and environments&lt;br /&gt;my $email = 'xx@xx';&lt;br /&gt;my $t_list= "xxxxx"; #list of directories to backup. txt file with each dir in one line&lt;br /&gt;my $backup_dir ="xx/xx/xx"; #dir where the backup files are stored&lt;br /&gt;my $backup_name = "xxx".datetime().".tar.gz";&lt;br /&gt;my $log_name = "xxxx".datetime().".log";&lt;br /&gt;&lt;br /&gt;my $startime=localtime();&lt;br /&gt;print "Performing backup:$backup_name ...\nstarting at $startime\n";&lt;br /&gt;system ("tar czvf  $backup_dir/$backup_name -T $t_list &gt;$backup_dir/$log_name");&lt;br /&gt;my $finishtime=localtime();&lt;br /&gt;print "\ndone! Finish time $finishtime\n";&lt;br /&gt;&lt;br /&gt;print "Email backup conformation to $email ...";&lt;br /&gt;email_notice($email,$backup_dir,$backup_name);&lt;br /&gt;print "done!\n";&lt;br /&gt;&lt;br /&gt;#############&lt;br /&gt;sub datetime {&lt;br /&gt;    my ($sec, $min, $hour, $day, $month, $year) = (localtime)[0, 1, 2, 3, 4, 5];&lt;br /&gt;    my $datetime = sprintf "%02d-%02d-%02d-%02d.%02d.%02d",&lt;br /&gt;      $year + 1900, ($month + 1), $day, $hour, $min, $sec;&lt;br /&gt;    return $datetime;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;sub email_notice {&lt;br /&gt;    my ($email, $backup_dir,$backup_name) = @_;&lt;br /&gt;    my $subject="Confirmation of backup";&lt;br /&gt;    my $time=localtime();&lt;br /&gt;my $body="&lt;br /&gt;A backup has finished at $time. The backup directory is: $backup_dir. The backup file is $backup_name. Please copy the backup file ASAP.&lt;br /&gt;&lt;br /&gt;Chenyang&lt;br /&gt;";&lt;br /&gt;open(MAIL, "|/usr/lib/sendmail -t");&lt;br /&gt; print MAIL "To: $email\n";&lt;br /&gt; print MAIL "From: $email\n";&lt;br /&gt; print MAIL "Subject: $subject\n";&lt;br /&gt; print MAIL "$body\n";&lt;br /&gt;close (MAIL);&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1861342631953197839-3237453136527954625?l=teckpower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://teckpower.blogspot.com/feeds/3237453136527954625/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://teckpower.blogspot.com/2009/02/ftp-backup-script.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/3237453136527954625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/3237453136527954625'/><link rel='alternate' type='text/html' href='http://teckpower.blogspot.com/2009/02/ftp-backup-script.html' title='FTP backup script'/><author><name>chenyang</name><uri>http://www.blogger.com/profile/01505859320096526309</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1861342631953197839.post-4704091610433136276</id><published>2009-02-14T17:51:00.000-08:00</published><updated>2009-02-14T18:10:26.147-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Installation directory in Linux</title><content type='html'>Use command:&lt;br /&gt;rpm -ql your_program_name&lt;br /&gt;&lt;br /&gt;to locate all the files associated with the program.&lt;br /&gt;&lt;br /&gt;Unlike windows, the installed files are distributed in various directories of the system.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1861342631953197839-4704091610433136276?l=teckpower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://teckpower.blogspot.com/feeds/4704091610433136276/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://teckpower.blogspot.com/2009/02/installation-directory-in-linux.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/4704091610433136276'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/4704091610433136276'/><link rel='alternate' type='text/html' href='http://teckpower.blogspot.com/2009/02/installation-directory-in-linux.html' title='Installation directory in Linux'/><author><name>chenyang</name><uri>http://www.blogger.com/profile/01505859320096526309</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1861342631953197839.post-8282134148236616730</id><published>2009-02-14T08:53:00.000-08:00</published><updated>2009-02-14T08:54:09.869-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Cool guide to fedora installation</title><content type='html'>&lt;A href="http://www.mjmwired.net/resources/"&gt;http://www.mjmwired.net/resources/&lt;/A&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1861342631953197839-8282134148236616730?l=teckpower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://teckpower.blogspot.com/feeds/8282134148236616730/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://teckpower.blogspot.com/2009/02/cool-guide-to-fedora-installation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/8282134148236616730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/8282134148236616730'/><link rel='alternate' type='text/html' href='http://teckpower.blogspot.com/2009/02/cool-guide-to-fedora-installation.html' title='Cool guide to fedora installation'/><author><name>chenyang</name><uri>http://www.blogger.com/profile/01505859320096526309</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1861342631953197839.post-2395174065035416607</id><published>2009-02-14T08:50:00.001-08:00</published><updated>2009-02-14T08:51:26.330-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Installing Nvidia driver on Fedora-10</title><content type='html'>&lt;A href="http://www.itech7.com/Linux/Installing-Nvidia-driver-on-Fedora-10"&gt;http://www.itech7.com/Linux/Installing-Nvidia-driver-on-Fedora-10&lt;/A&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1861342631953197839-2395174065035416607?l=teckpower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://teckpower.blogspot.com/feeds/2395174065035416607/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://teckpower.blogspot.com/2009/02/installing-nvidia-driver-on-fedora-10.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/2395174065035416607'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/2395174065035416607'/><link rel='alternate' type='text/html' href='http://teckpower.blogspot.com/2009/02/installing-nvidia-driver-on-fedora-10.html' title='Installing Nvidia driver on Fedora-10'/><author><name>chenyang</name><uri>http://www.blogger.com/profile/01505859320096526309</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1861342631953197839.post-4375704536612243524</id><published>2009-02-14T08:45:00.000-08:00</published><updated>2009-02-14T08:51:42.410-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>How to compile software from source</title><content type='html'>&lt;A href="http://www.tuxfiles.org/linuxhelp/softinstall.html"&gt;http://www.tuxfiles.org/linuxhelp/softinstall.html&lt;/A&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1861342631953197839-4375704536612243524?l=teckpower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://teckpower.blogspot.com/feeds/4375704536612243524/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://teckpower.blogspot.com/2009/02/how-to-compile-software-from-source.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/4375704536612243524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1861342631953197839/posts/default/4375704536612243524'/><link rel='alternate' type='text/html' href='http://teckpower.blogspot.com/2009/02/how-to-compile-software-from-source.html' title='How to compile software from source'/><author><name>chenyang</name><uri>http://www.blogger.com/profile/01505859320096526309</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
