作業系統比對指令碼[inststuff.pl](轉)
作業系統比對指令碼[inststuff.pl](轉)[@more@] #!/usr/bin/perl -w ########################################################################### # Global definitions ########################################################################### use Getopt::Long; $rsync="/usr/local/bin/rsync"; $ssh="/usr/local/bin/ssh"; $rsync_cmd="$rsync -Rapzq --partial -e $ssh"; ########################################################################### # Check for help request. Display help page if --help/-h/-? was passed. ########################################################################### sub help_page { my $programname = $0; $programname =~ s#^./##; print "$programname - .
"; print "
Usage: $programname
"; exit 1; } sub GetParas { my ($argv); $argv = join(,@ARGV); $argv = join(,@ARGV); &help_page if ( $argv eq "" || $argv =~ m!-h! ); GetOptions("d:s"); if ($opt_d eq "") { &help_page; exit(1); } return ($opt_d); } sub Env{ if ($> != 0) { print ("
The command need root permission!
"); exit(1); } } ########################################################################### #Main routine ########################################################################### sub main { my $help = grep(/^--help$/, @ARGV) || grep (/^-h$/, @ARGV) || grep (/^-?$/, @ARGV) || 0; help_page() if $help; #check user uid &Env; my $dirs=&GetParas; #remove file from localhost if (-e "$dirs/delfilelist") { foreach $removefile (`cat $dirs/delfilelist`) { chomp($removefile); if (-e "$removefile") { print "---remove---$removefile
"; system("$rsync_cmd "$removefile" $dirs/del/"); system("mv "$removefile" "$dirs/del$removefile" 2>/dev/null"); } } } #copy newfile to localhost if (-e "$dirs/addfilelist") { foreach $filename (`cat $dirs/addfilelist`) { chomp($filename); chdir("$dirs/filedir"); if(! $filename eq "") { print "---add---$filename
"; system("$rsync_cmd .$filename /"); } } } #update localhost file if (-e "$dirs/updatefilelist") { foreach $updatefile (`cat $dirs/updatefilelist`) { chomp($updatefile); chdir("$dirs/filedir"); if ( -e "$updatefile" ) { print "---update---$updatefile
"; system("$rsync_cmd .$updatefile /"); } } } } &main
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-965597/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Linux作業系統的Shell程式設計指令碼欣賞(轉)Linux作業系統程式設計指令碼
- 六大UNIX作業系統的比較(轉)作業系統
- CentOS7.5安裝PostgreSQL作業系統配置指令碼CentOSSQL作業系統指令碼
- 使用DBMS_SCHEDULER排程作業系統shell指令碼作業系統指令碼
- 作業系統列表(轉)作業系統
- 實時作業系統與通用作業系統的一些比較 (轉)作業系統
- Linux 作業系統指令碼格式問題導致指令碼無法執行Linux作業系統指令碼
- 系統比對[oscmp.pl](轉)
- 【作業系統】頁表對映作業系統
- 我對作業系統的理解作業系統
- 對《windows作業系統原理》一書的評論 (轉)Windows作業系統
- 幾種作業系統mt命令比較作業系統
- 作業系統(1)——作業系統概述作業系統
- 作業系統(一):作業系統概述作業系統
- WindowsXP作業系統十例&#(轉)Windows作業系統
- 深度探索 OpenBSD作業系統(轉)作業系統
- (轉)開源IT監控系統對比
- 我和 chatGPT 對線作業系統!ChatGPT作業系統
- CPU、指令集、體系結構以及作業系統作業系統
- Linux作業系統原始碼詳細分析(二)(轉)Linux作業系統原始碼
- Linux作業系統原始碼詳細分析(三)(轉)Linux作業系統原始碼
- 作業系統全接觸之UNIX系統(轉)作業系統
- 作業系統(二):作業系統結構作業系統
- 【作業系統】作業系統綜述(一)作業系統
- 作業系統 作業5作業系統
- 網友對國產作業系統的一些議論(轉)作業系統
- FreeBSD系統啟動指令碼(轉)指令碼
- Debian系統啟動指令碼(轉)指令碼
- 麒麟作業系統核心同其他作業系統核心的相似性分析(轉)作業系統
- 作業系統---IO許可權管理和敏感指令作業系統
- UNIX作業系統的歷史(轉)作業系統
- Linux作業系統介紹(轉)Linux作業系統
- 逆勢作業系統(CDP)(轉載)作業系統
- Unix類作業系統入門(轉)作業系統
- 龍蜥作業系統上玩轉銅鎖密碼庫作業系統密碼
- Linux作業系統的許可權程式碼分析【轉】Linux作業系統
- 作業系統1—作業系統概論(上)作業系統
- 作業系統2—作業系統概論(下)作業系統