Time of Update: 2014-07-24
標籤:資料 for re c ar 程式 perl命令列參數預設儲存在perl自訂變數@ARGV中。#判斷參數個數是否為0,根據上下文環境這裡就是==符號,這裡@ARGV指的是命令列參數數組元素個數if(@ARGV == 0)#
Time of Update: 2014-07-22
標籤:style os for re c line Perl語言編程不安全語法檢查可用下面兩個命令: #!/usr/bin/perl -w 或者: use warnings;
Time of Update: 2014-07-22
標籤:os 資料 art for re c #!/usr/bin/perl# name: logcalc.pl# calc the amount of access urluse strict;use&nb
Time of Update: 2014-07-15
標籤:des style http color strong 檔案 Perl File Handling: open, read, write and close files#====================Opening filesSolution 1:Opening a file
Time of Update: 2018-12-08
Regex(Regular Expression,縮寫為regexp,regex或regxp),又稱正規運算式、正規表示式或常規運算式或正規化標記法或正規標記法,是指一個用 來描述或者匹配一系列符合某個句法規則的字串的單個字串。在很多文字編輯器或其他工具裡,Regex通常被用來檢索和/或替換那些符合某個模式的文本 內容。許多程式設計語言都支援利用Regex進行字串操作。例如,在Perl中就內建了一個功能強大的在Regex引擎。Regex這個概念最初是由
Time of Update: 2018-12-08
一開始打算用perldoc看Apache2::Request模組,結果在運行時出現如下錯誤:複製代碼 代碼如下:Error in tempfile() using /tmp/XXXXXXXXXX:parent directory (./) isnot writable at /usr/lib/perl5/5.8.8/Pod/Perldoc.pm line
Time of Update: 2018-12-08
之前總不重視自己的部落格,上回一丟才心疼,現在重視起來,決定定期備份sql。寫個小指令碼如下:複製代碼 代碼如下:#!/usr/bin/perluse warnings;use strict;use MySQL::Backup;use Mail::Sender;open my $tmp_sql, '>', "backup.sql";my $mb = new MySQL::Backup('dbname', 'localhost', 'dbuser', 'dbpasswd',
Time of Update: 2018-12-08
複製代碼 代碼如下:my $ip = "192.168.0.1|192.168.0.2|192.168.0.1";if ( $ip =~ / ^ (?: ((?:\d{1,3}\.){3}\d{1,3}) (?= (?: \|(?!\1)(?1) )* \z ) \| )* (?1) $ /x ) {
Time of Update: 2018-12-08
Perl 社區並不是所有的東西都發布在 CPAN 上。甚至專門有一個 Module::ThirdParty 模組記錄這些非 CPAN 的 perl 項目列表。其中最有名的應該就屬寫部落格的 Movable Type 和做監控的 SmokePing 了。但是如果個人圖方便又想把 smokeping 打包方便部署使用的時候,就會發現一點小問題:打包成rpm,很多 perl 的相依模組不一定在系統 repo 裡存在;打包成 perl 的模組,smokeping 最常用的幾個 probe 比如
Time of Update: 2018-12-08
chomp是用來刪除分行符號. 複製代碼 代碼如下:#!/usr/bin/perl $c="abcde"; chomp($c); print "$c\n"; [root@ak]# perl a.pl abcde chop是用來刪除最後一個字元. 複製代碼 代碼如下:#!/usr/bin/perl $c="abcde"; chop($c); print "$c\n"; [root@ak]# perl a.pl abcdchomp與chop的用法
Time of Update: 2018-12-08
我的第一個用於生產環境的perl指令碼,雖然不是很優秀,但也邁出了紮實的一步 領導有任務,給一批IP列表,ping每一台機器,如果沒有響應就發郵件通知,通知的郵件需要分開,不能通知一個列表,得一封一封的通知.用到email::send模組,因為需要用到Gmail複製代碼 代碼如下:#!/usr/bin/perl use warnings; use strict; use Email::Send; use Email::Send::Gmail; use
Time of Update: 2018-12-08
基本用法#初始化%h為空白數組 %h={};#用數組初始化%h為a=>1,b=>2 %h=('a',1,'b',2);#意義同上,只是另一種更形象化的寫法。%h=('a'=>1,'b'=>2);#如果key是字串,可以省略引號。下面這行和上面那行是一樣的%h=(a=>1,b=>2);#用{}來訪問print “$h{a}\n”;#列印 $h{b}='2b'; print “$h{b}\n”; #列印2b#刪除key用delete delete$h{b};
Time of Update: 2018-12-08
但是,linux系統的常用小工具awk天生對列操作友好,有時直接在perl中調用awk比寫相應的perl指令碼要方便有效多。比如用system插入awk語句:複製代碼 代碼如下:system(gawk '{print $1}' $filename);執行該l語句,你會發現這行會報錯,提示你使用了read-only 的變數$1。那麼,如何處理兩種生態系統下的衝突呢?有一個簡單的解決辦法: 複製代碼 代碼如下:my $i="$1";system(gawk '{print $i}'
Time of Update: 2018-12-08
1、單行(大檔案處理):複製代碼 代碼如下:my $oneline = <$FL> 或while($line=<H>){ }2、讀取全部(小檔案處理): 複製代碼 代碼如下:open (my $in, "path ") or die "open error: $! "; my @lines = <$in> ;3、讀3行(大檔案及特殊處理需要): 複製代碼 代碼如下:open (my $in, "path ") or die "open error: $! ";
Time of Update: 2018-12-08
Perl use和require用法對比對比(一)說明:這兩個函數都是一個意思,載入和引用Perl的模組,或者是子程式,區別在於Perl use是在當前預設的裡面去尋找,一旦模組不在指定的地區內的化,用Perl use是不可以引入的第一、Perl use引入的名稱不需要尾碼名,而require需要第二、Perl use語句是編譯時間引入的,require是運行時引入的第三,Perl use引入模組的同時,也引入了模組的子模組。而require則不能引入,要在重新聲明Perl use
Time of Update: 2018-12-08
Perl利用函數rand()和srand()為隨機數(更確切的說是"偽隨機數")字串的產生提供了基本的工具。這些函數不是利用加密來提供安 全性的,所以不要利用它們為你金融資訊的加密。但是,如果你需要為你的下一個遊戲或者動態Web網站的新特性設計一個簡單的隨機數產生器,那麼 rand()和srand()可能就是你所需要的。函數rand()是真正的隨機數產生器,而srand()會設定供rand()使用的隨機數種子。函數rand()會返回一個處於0和你所指定的數
Time of Update: 2018-12-08
perl有最好的文本資料處理能力.這是大家都知道的.在perl本身有一個別的軟體沒有的小功能,就是Perl格式.它相當於簡單的命令列報表和圖表輸出.這個需要先聲明格式.建立格式的檔案控制代碼.然後由@,^,<,>,|這樣的字元構成所謂的”報表”來輸出圖表.這樣可以指定出行的外觀.後面接資料項目,最後用write來顯示格式化的內容.範例:輸出紀錄格式輸出象下邊一樣定義:format NAME =FORMLIST.第一部分,聲明.如上.如果省略 NAME,上面的代碼將定義格式輸出
Time of Update: 2018-12-08
常用系統函數列表 指令:print文法:print Filehandle LIST說明:這個Filehandle可以看作在I(INPUT)/O(OUTPUT)之間的一個橋樑,可以利用FILEHANDLE來做出資料讀入寫出的動作.STDIN是代表從哪連輸入資料,例如從電腦的鍵盤輸入;STDOUT是代表從哪連輸出資料;例如從電腦的螢幕輸出;STDERR是代表從哪連輸出錯誤的資料,例如從電腦的螢幕輸出.而在PERL語言中有三個標準FILEHANDLE:
Time of Update: 2018-12-08
大家有沒有碰到過unix上,一個目錄檔案太多,無法刪除的現象,我為大家寫了個perl的程式刪除複製代碼 代碼如下:cat > del.pl#!/usr/bin/perl $file1=$ARGV[0]; @tests=(1,2,3,4,5,6,7,8,9,'A','B','C','D','E','F','G','H','I','G','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'); foreach
Time of Update: 2018-12-08
本應用程式設計的幾個基本理念是:工具箱再利用:儘可能利用已有的工具;簡化運行步驟;不引入過多的商務邏輯,滿足的需求越簡單越好。所以,我們定義了本應用程式依賴於以下幾個工具的運行:ActivePerl-5.8.4.810-MSWin32-x86Upload.plUpload.config我們將主要的執行邏輯都放在Perl源檔案Upload.pl中了,設定檔為Upload.config。這個perl檔案將執行的任務是,