[轉]Shell向Perl指令碼中傳遞變數的方法
From:http://blog.csdn.net/bonny95/archive/2009/01/12/3760640.aspx
In shell using export to output a variable, and in perl using special variable %ENV to get shell's variables.
方法一:
i.e.:
--- shell box---
$ \bin\ksh
# export x=Foo
# perl -e 'print $ENV{"x"}'
-------------
方法二:
象C一樣,PERL也有儲存命令列引數的陣列@ARGV,可以用來分別處理各個命令列引數;與C不同的是,$ARGV[0]是第一個引數,而不是程式名本身。$var = $ARGV[0]; # 第一個引數
$numargs = @ARGV; # 引數的個數
PERL中,<>運算子實際上是對陣列@ARGV的隱含的引用,其工作原理為:
1、當PERL直譯器第一次看到<>時,開啟以$ARGV[0]為檔名的檔案;
2、執行動作shift(@ARGV); 即把陣列@ARGV的元素向前移動一個,其元素數量即減少了一個。
3、<>運算子讀取在第一步開啟的檔案中的所有行。
4、讀完後,直譯器回到第一步重複。
例:
@ARGV = ("myfile1", "myfile2"); #實際上由命令列引數賦值
while ($line = <>) {
print ($line);
}
將把檔案myfile1和myfile2的內容列印出來
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/82392/viewspace-591872/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- go 呼叫 shell 指令碼 如何傳遞引數Go指令碼
- shell (3)指令碼引數傳遞與數學運算指令碼
- linux_shell awk中傳遞變數Linux變數
- 向檢視傳遞變數變數
- shell指令碼中的變數及應用指令碼變數
- Linux/Unix shell 引數傳遞到SQL指令碼LinuxSQL指令碼
- shell指令碼變數和sqlplus變數傳遞採集資料入oracle資料庫指令碼變數SQLOracle資料庫
- Shell指令碼中傳送html郵件的方法指令碼HTML
- Linux shell程式設計(一)shell指令碼中的變數詳解Linux程式設計指令碼變數
- Linux/Unix shell sql 之間傳遞變數LinuxSQL變數
- shell指令碼的執行環境變數指令碼變數
- shell指令碼中main函式中$#獲取不到指令碼傳入引數個數淺析指令碼AI函式
- 向路由元件傳遞引數2種方法路由元件
- 【轉】shell指令碼處理字串的常用方法指令碼字串
- Shell學習【引數傳遞】
- JS的方法引數傳遞(按值傳遞)JS
- Shell指令碼程式設計規範與變數(shell指令碼必須要知道的規矩!)指令碼程式設計變數
- 方法的過載、可變形參的方法、方法的引數值傳遞機制、遞迴方法遞迴
- 如何檢視Docker容器環境變數,如何向容器傳遞環境變數Docker變數
- shell程式設計Bash中對變數的操作方法談(轉)程式設計變數
- [Shell] shell中的內部變數變數
- perl指令碼指令碼
- Perl指令碼執行方法小結指令碼
- Java方法04:命令列傳遞引數、可變引數Java命令列
- Perl的物件導向方法物件
- CentOS shell中的變數CentOS變數
- 向大家分享一個shell指令碼的坑指令碼
- shell指令碼之變數定義規範及使用指令碼變數
- shell指令碼程式設計學習筆記——變數指令碼程式設計筆記變數
- shell 指令碼常用 oracle 環境變數set 設定指令碼Oracle變數
- [linux shell]引數傳遞之空格Linux
- 傳送kafka訊息的shell指令碼Kafka指令碼
- Shell 中 $ 關於指令碼引數的幾種用法指令碼
- SSM框架中Mybatis傳遞引數的幾種方法SSM框架MyBatis
- SAP Report 變數的值傳遞變數
- java 中引數的傳遞Java
- 【Linux】什麼是shell指令碼?shell變數分為哪幾類?Linux指令碼變數
- perl正規表示式中的特殊變數變數