Hi again, i did tried combine but somehow this errors appear.Is it what i am doing is totally wrong?
String found where operator expected at step1_inpout.pl line 21, near "$writehandle "+>"" (#1) (S syntax) The Perl lexer knows whether to expect a term or an ope +rator. If it sees what it knows to be a term when it was expecting to see + an operator, it gives you this warning. Usually it indicates that an operator or delimiter was omitted, such as a semicolon. (Missing operator before "+>"?) String found where operator expected at step1_inpout.pl line 23, near "$outputhandle ">"" (#1) (Missing operator before ">"?) syntax error at step1_inpout.pl line 21, near "$writehandle "+>"" syntax error at step1_inpout.pl line 23, near "$outputhandle ">"" Execution of step1_inpout.pl aborted due to compilation errors (#2) (F) Probably means you had a syntax error. Common reasons include +: A keyword is misspelled. A semicolon is missing. A comma is missing. An opening or closing parenthesis is missing. An opening or closing brace is missing. A closing quote is missing. Often there will be another error message associated with the synt +ax error giving more information. (Sometimes it helps to turn on -w. +) The error message itself often tells you where it was in the line +when it decided to give up. Sometimes the actual error is several toke +ns before this, because Perl is good at understanding random input. Occasionally the line number may be misleading, and once in a blue + moon the only way to figure out what's triggering the error is to call perl -c repeatedly, chopping away half the program each time to se +e if the error went away. Sort of the cybernetic version of S<20 questions>. Uncaught exception from user code: syntax error at step1_inpout.pl line 21, near "$writehandle "+ +>"" syntax error at step1_inpout.pl line 23, near "$outputhandle ">"" Execution of step1_inpout.pl aborted due to compilation errors. at step1_inpout.pl line 46
This is my code
#! /tools/perl/5.8.8/linux/bin/perl use strict; use warnings; use diagnostics; # grab user input.. print "Enter the name of the file to read: "; my $filetoread = <STDIN>; chomp($filetoread); print "Enter the name of the file to write: "; my $filetowrite = <STDIN>; chomp($filetowrite); print "Enter the name of the output file: "; my $fileoutput = <STDIN>; chomp($fileoutput); open my $readhandle, "<", $filetoread or die "Unable to read '$filetor +ead'"; open my $writehandle "+>", $filetowrite or die "Unable to write '$file +towrite'"; open my $outputhandle ">", $fileoutput or die "Unable to write '$fileo +utput'"; while (<$readhandle>) { if ($_ =~ /^\s\s(\S+)*delay\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+ +(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+) +/) { print $writehandle $_; } } while(<$writehandle>) { my ( $set ) = m/^\s+(\S+)/; #get the first word my ( $name,$value ) = m/-name (\S+) (\S+)/; #get the name and + value my ( $mode ) = m/mode == (\S+)\"/; #get the mode print "$mode $name $set $value\n"; } close $readhandle; close $writehandle;
In reply to Re^4: How to ask user for file name and save the output to a new text file
by mmazlan67
in thread How to ask user for file name and save the output to a new text file
by mmazlan67
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |