2017-06-20 176 views
-3

我目前正在使用Perl語言創建一個在線工具的命令行應用程序。 共有九個模塊(每個模塊都有單獨的Perl腳本)。如何將一個腳本的輸出文件作爲另一個腳本的輸入文件?

命令行的申請應以下列way-

  1. 工作在這些九個模塊的用戶將能夠選擇任意數量的模塊中。 (應該建立簡短的管道)。

  2. 運行第一個選定的模塊後,生成輸出文件。

  3. 第一個模塊的輸出文件應該被用戶選擇的下一個模塊作爲輸入文件。

我的疑問是我們如何才能將第一個模塊的輸出文件作爲下一個選定模塊的輸入文件。 因爲我是Perl編程的新手,所以如果你解決了我的疑問,這將會非常有幫助。 感謝你!

+0

使用管道:https://stackoverflow.com/questions/10765311/how-to-read-to-and-write-from-a-pipe-in​​-perl – Tamar

+1

請不要使用全部大寫。它意味着... –

+0

歡迎來到StackOverflow。你需要更多地解釋配對。請提供更多樣本輸入。強烈建議您參加此遊覽,並確定您應閱讀[鏈接](https://stackoverflow.com/questions/how-to-ask)如何提問。 –

回答

0

添馬艦是正確的。你可以使用pipe命令:「|」。無論您使用的是Windows還是基於Unix的操作系統,都可以執行此操作。

這裏就是你正在做的一個簡單的例子:

代碼來輸出數據 out.pl這需要輸入文件 in.pl

#!/usr/bin/perl 

use strict; 
use warnings; 

my $gaspage = <STDIN>; 
chomp $gaspage; 
print $gaspage."\n"; 

#!/usr/bin/perl 

use strict; 
use warnings; 

my $file = "output.txt"; 
my $data = "gasp"; 

unless(-e $file){ 
    open(my $fh, '>', $file); 
    print $fh $data; 
    close $fh; 
} 

代碼然後你可以用下面的命令運行它,它可以在你的perl應用程序中運行,或者在終端中運行:

perl out.pl 
cat output.pl | in.pl 
相關問題