2017-06-20 8 views
-3

私は現在、Perl言語を使用してオンラインツールのコマンドラインアプリケーションを作成しているプロジェクトに取り組んでいます。 合計9つのモジュールがあります(モジュールごとに個別のPerlスクリプトがあります)。別のスクリプトの入力ファイルとして、あるスクリプトの出力ファイルを作る方法は?

このコマンドラインアプリケーションは、ユーザーが任意の数のモジュールを選択することができるであろうこれらの9つのモジュールのうち、以下の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へようこそ。ペアリングの詳細について説明する必要があります。より多くのサンプルを入力してください。ツアーを受けることを強くお勧めします。[link](https://stackoverflow.com/questions/how-to-ask)How to Askをお読みください。 –

答えて

0

Tamarが正しい。パイプコマンド: "|"を使用することができます。 WindowsやUNIXベースのオペレーティングシステムを使用している場合でも、これを行うことができます。

コード

#!/usr/bin/perl 

use strict; 
use warnings; 

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

in.pl入力ファイル を取る

#!/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; 
} 

out.plコードは、出力データに:

ここで何をやっているの簡単な例ですそれでは、以下のコマンドを実行して、perlアプリケーション内または端末の中で実行することができます:

perl out.pl 
cat output.pl | in.pl 
関連する問題