2016-04-18 2 views
-1

Я хотел бы спросить, почему мой скрипт не работает в системе окон X64bits. Этот скрипт работает в X32bits раньше. Но я не понимаю, почему у него была ошибка, так как «невозможно открыть входной файл»Perl - система 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

Если у вас есть два вопроса, задайте их отдельно. Одновременно нельзя поставить два правильных ответа на один вопрос. – choroba

+0

Я не вижу причин, чтобы это не работало на 64-битной платформе. Вы получаете сообщения об ошибках? Пожалуйста, отредактируйте свой вопрос и введите свой код правильно, его очень трудно прочитать. – simbabque

+0

@choroba У меня есть вопрос. – cs87

ответ

0

Это не связано с архитектурой сборки Perl, сборки ОС или системы.

Начните с проверки, какая у вас ошибка!

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

С кодом. У меня ошибка: «Не могу открыть ..... Нет такого файла или директора» – cs87

Смежные вопросы