怎麼編輯perl腳本
❶ 菜鳥perl腳本編寫
#!/usr/bin/env perl
while (<>) {
chomp;
push @file1, $_;
$len ++;
}
while (<>) {
chomp;
push @file2, $_;
}
for ($i = 0; $i < $len; $i ++) {
print $file1[$i],' ',$file2[$i]," ";
}
給分吧。
❷ mac自帶的腳本編輯器怎樣編寫perl語言程序。
編譯器,嚴格來說是解釋器,perl是腳本語言,不需要編譯就可以運行
c語言需要編譯成exe才能運行;
編輯器是txt,notepad,ultraedit; sublime;單純的編輯文本的軟體。
推薦新手使用activeperl解釋器。
精通Perl
❸ 如何製作perl腳本
先裝編譯器Activeperl5.6,然後裝個文本編輯器notepad++或ET之類的,在編輯器內編寫完成後,如樓上那位仁兄說的,然後 用dos cd跳轉,如果輸入perl -v顯示版本,說明你已經安裝成功
❹ perl腳本編寫
open IN,"<$ARGV[0]";
open OUT,">$ARGV[1]";
while(<IN>){
@a=split("",$_,29);
if($a[28]=~m/\s/){
print OUT "$_";}
close IN;
close OUT;
望採納
❺ perl,我想用perl寫個小腳本
如果是WINDOWS,裝一個PERL軟體
如果是linux,基本都已經裝好了的。打開文件編輯器,寫好程序後保存*.pl
再雙擊運行,或者打開命令界面輸perl *.pl運行
❻ 如何編寫perl 腳本命令選項列表
如果是WINDOWS,裝一個PERL軟體,如果是LINUX,基本都已經裝好了的。打開文件編輯器,寫好程序後保存*.pl,再雙擊運行,或者打開命令界面輸perl *.pl運行
❼ perl 怎麼實現腳本
你有寫好的perl腳本嗎?
如果你是windows機器,安裝了ActivePerl的前提下,最直接的辦法,在某個目錄下新建一個.txt的文檔,在文檔里寫下你的代碼,然後從命令行窗口中進入到這個文檔所在目錄,敲 perl <你的文檔名字>.txt 就運行了。
在linux下也是如此,不過一般perl文件的擴展名是.pl 。也可以在shell腳本中直接調用perl腳本方法也是添加一行perl ./<你的文檔名字>.pl 。
看來你對這還完全不懂啊,建議你看看learning perl,中文名字是《perl語言入門》,網路文庫隨便搜得到。
❽ 如何調試perl腳本
進入退出:
perl
-d debugtest用調試器載入perl程序運行,互動式界面
Loading
DB routines from perl5db.pl version 1.3
Editor
support available.
Enter
h or `h h' for help, or `perldoc
perldebug'
for more help.
main::(p4.pl:2): my($xx,$yy)=(1,1);
DB<1>
先是歡迎信息,顯示第一個可執行行:程序將要執行的當前行號。包名,文件名,文件中的行號。
提示符DB<n>
n為命令行號。h可看幫助,q退出調試器
l
預設顯示10行 再輸入l接著顯示10行
l
10 指定顯示第10行
l
8-10 指定顯示行的范圍
l
8+3 指定從哪行開始多少行。
l
subs 指定顯示函數,提供函數名。如果太長只顯示前幾行,用l接著顯示
-
顯示在當前行前面的行,再輸入-繼續向前
w
7 包含指定行的顯示窗口 windows可能不一樣
//
?? 從當前行搜索包含指定模式的行 /find/
//從前向後正向搜索,??從後向前逆向搜索 可忽略?? //中後面的? /。
S
列出所有函數,包名::函數
無參數的預設形式列出所有底層和繼承的函數,太多。加上搜索模式,指定當前程序包 S main可列出含main的函數
s 執行單條語句 顯示下一條要執行的語句。如果需要交互會等待輸入。
對於函數,僅僅是進入不執行,如果不進入函數內部,要跳過用n。不能進入系統內部的庫函數,只能進入自己定義的
n 執行一行程序,stepover 不進入函數。
f 執行當前函數剩下的語句,顯示跟隨函數的語句
step
out 舊命令,現在為切換文件名
回車
如果執行了s或n,以後只用回車重復執行上一個s或n的命令。
r 在函數中執行到函數外
b 10
在哪一行設置斷點。如果此行非執行語句,顯示不能設置斷點。如果一條語句有多行,則在第一行設置,其餘行不能設置。
b func在函數處設置斷點
b 10
($curdir eq
"") 當條件為真時中斷執行
c
執行到斷點或終止。繼續
c
12臨時斷點,只中斷一次,繼續執行在12行中斷。
L
列出所有斷點。列出前幾行,當前行,斷點。斷點條件。
B
10刪除斷點。不帶參數認為是下一行是斷點。
B *
刪除所有斷點。
X
var 不帶參數列出main包的所有變數,包括預定義的變數。指定變數不帶$,@。可能是符號表中的變數才行。現在與V同。
V
var 列出任何包的變數。只指定包名列出包的所有變數。指定包及變數為main
var。無::
S
列出所有可用的函數,包名::函數 無參數的預設形式列出所有底層和繼承的函數,太多。加上搜索模式,
指定當前程序包
S
main可列出含main的函數
p
expr
指印表達式值。把標准輸出重定向也會輸出到屏幕。
程序到達某一行時指定執行一條或多條語句。常見的行動作是顯示變數值或把含錯誤值的變數重置為指定的值
a
10 print ("curdir is $curdir\n") 多條語句在一行中用分號;分開,當要續行時用\ 執行完第10行執行指定的語句。
A
*刪除所有行動作
A 10刪除第10行的動作
>
print 在程序開始執行前執行語句。無參數形式刪除設置
<
print 在程序執行完成後執行語句。無參數形式刪除設置
跟蹤 顯示每一個執行行。
t
打開,關閉跟蹤。每執行顯示一行。
任何非調試命令的perl語句都可執行。分號可忽略。更改變數值。
H
列出從前命令
!
n 執行從前命令。忽略行號執行上一條命令
n=-2跳過2條命令。從當前H列表逆向跳過。
T
棧跟蹤。調用級
$
= &main::sub2('hi') from file debug1 line 7
$
= &main::sub1('hi') from file debug1 line 3
當前程序在第7行,在main包的sub2函數中,以hi為實際傳遞的參數。返回簡單變數,此函數由sub1調用。
=
別名 命令 給命令定義別名 =
pc print ("curdir is $curdir\n");別名存在%DB(%DB::alias)中。無參數列出定義的別名。輸入pc列印語句。
預定義別名:每次載入調試器自動定義別名。在.perldb中加入$DB'alias{"pc"} = 's/^pc/print
("curdir is $curdir\n");/';
錯誤檢查
Lint perl -MO=Lint,-u pl 編譯時檢查
perldiag錯誤信息
-w 重定義函數變數未使用
Use strict;
use diagnostics 警告信息。
命令行參數簡介
-c 語法檢查
-v版本
-w警告信息
-e執行單行程序
-s為程序提供命令行選項。perl -s prog.pl
-q =>$q=1作為選項。不出現在@ARGV中。否則不加-s,-q作為字元串存在@ARGV中。可賦值-abc="abc"
跟在程序名後帶-的是選項,不帶-的不是,不是選項的項後面的所有都不是選項。
-P先運行c預處理器,輸出再由perl執行
-I指定目錄中的包含文件
-n循環處理多個文件。不用while
-p讀文件行並顯示。同n,不用print自動顯示。
-i編輯文件,讀然後寫迴文件。
-a分割行到@F
-F分割模式,指定分割符
-0
指定輸入行結束符,用八進製表示
-1
指定輸出行結束符
-x從消息中抽取程序。忽略行,直到遇到#!..perl。到文件尾,ctrl-d
ctrl-z __END__時結束
-u產生coremp
-U可以執行不安全操作
-S從路徑中查找程序
-D設置調試標志
-T寫安全程序。從外部獲得的數據不能作為命令或修改文件系統
-d使用調試器