2016-04-18 8 views
-1

。このスクリプトは以前はX32bitsで動作しています。しかし、私はそれのようにエラーを持った理由Perlの - 私は窓X64bitsシステムにおける私のスクリプトのカントの仕事である理由お願いしたいと思いX64bitsシステムとX32bitsシステム

にしても出力がX64bitsシステムで発生していないがあり、「入力ファイルを開くことができません」いけません。

#!/usr/bin/env perl 

use strict; 
use warnings 'all'; 

my $directory = 'D:/Script_Code/Perl/Test/Datalog/Unit_80'; 

my $testna = 'FW OTP Check UVLO VIN Voltage'; 
my $testpin = 'vrect'; 
my $testnb = 'FW OTP Checksum Readback'; 
my $testnc = 'FW OTP Checksum Difference'; 
my $testnd = 'FW Checksum Pat Pin Fail Count'; 

my @header = ('Unit#', 'Test_Name', 'Pin_Name', 'Measure_Data', 'Upper_limit'); 
my $format = "%-8s %-40s %-15s %-15s %-1s\n"; 
my $outfile = "$directory.sdc"; 

open (OUT, ">$outfile"); 
open (INF, "$directory") || die (" can not open input file \n"); 

printf $format, @header; 
printf OUT $format, @header; 

while (<INF>) { 

if (/Device#:\s*(\d+)/) 
{ $unit = $1; 
    next; } 

chomp; 

my @fields = split /\s{2,}/; 

if ($fields[2] eq $testna and $fields[3] eq $testpin) {    # TEMP_SENSE_VBE 
    printf $format, $unit, $fields[2], $fields[3], $fields[5]; 
    printf OUT $format, $unit, $fields[2], $fields[3], $fields[5]; 
} 
if ($fields[2] eq $testnb) {    # TEMP_SENSE_VBE 
    printf $format, $unit, $fields[2], $fields[3], $fields[5]; 
    printf OUT $format, $unit, $fields[2], $fields[3], $fields[5]; 
} 
if ($fields[2] eq $testnc) {    # TEMP_SENSE_VBE 
    printf $format, $unit, $fields[2], $fields[3], $fields[5], $fields[6]; 
    printf OUT $format, $unit, $fields[2], $fields[3], $fields[5], $fields[6]; 
} 
if ($fields[2] eq $testnd) {    # TEMP_SENSE_VBE 
    printf $format, $unit, $fields[2], $fields[3], $fields[5], $fields[6]; 
    printf OUT $format, $unit, $fields[2], $fields[3], $fields[5], $fields[6]; 
} 

} 
     close (INF) || die "cannot close input file !!"; 
     close (OUT); 
+1

、個別にそれらを求めます。 1つの質問に対する2つの正解を同時にチェックすることはできません。 – choroba

+0

私は、これは64ビットのプラットフォーム機能しない何らかの理由が表示されません。エラーメッセージが表示されますか?あなたの質問を編集してコードを正しくインデントしてください。読みにくいです。 – simbabque

+0

@choroba私は1つの質問にそれを作りました。 – cs87

答えて

0

これは、Perlビルド、OSビルド、またはシステムのアーキテクチャには関係しません。あなたが得たものをエラーチェックすることにより、

スタート!次の2つの質問がある場合

open (OUT, ">", $outfile) 
    or die("Can't create \"$outfile\": $!\n"); 
open (INF, "<", $directory) 
    or die("Can't open \"$directory\": $!\n"); 
+0

コードを使用します。私は "開くことができません.....そのようなファイルまたはdirectorv"というエラーがあります – cs87

関連する問題