Sponsored Content
Top Forums Shell Programming and Scripting Slight error with my perl script that I could use some help on Post 302997210 by Eric1 on Tuesday 9th of May 2017 07:59:28 PM
Old 05-09-2017
Slight error with my perl script that I could use some help on

So I have a perl script that prompts the user to enter either q or Q to exit the program or c to continue said program. If the user inputs anything other than those three keys they will be prompted again and again for an appropriate input. My script works for the most part except for one small oddity. Here's an example- if the user inputs a, they will be prompted again. They input a again, they are prompted once more. They input q and the program exits. Works fine right? I run my script again and I change my inputs a little. This time I input a first, the user is prompted again. Now I input q, but the program doesn't exit, it prompts me yet again. If I input q now, it will exit. This oddity also occurs if it's Q or c as well instead of q. This is the oddity I want to fix, can anyone help? Here is the bulk of my code that deals with this small problem-

Code:
print "Welcome to an interactive Perl program. Enter either q or Q to terminate the program or c to continue. Enter your key now: ";
my $input;
$input = <STDIN>;
chomp $input;
if (($input ne "q") && ($input ne "Q") && ($input ne "c"))
        {
                print "Welcome to an interactive Perl program. Enter either q or Q to terminate the program or c to continue. Enter your key now: ";
                $input = <STDIN>;
                chomp $input;
        }
elsif (($input eq "q") || ($input eq "Q"))
        {
                exit;
        }
else
        {

the parts after else aren't important, as I've tested them and they work fine. It's only the small oddity that I described above that I need assistance with

Last edited by jim mcnamara; 05-09-2017 at 09:03 PM.. Reason: code tag correction
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Having a slight problem!?

having a slight problem. any clues would help. Can't seem to get any output when I run a simple echo script. grex.cyberspace.org% chmod a+x test grex.cyberspace.org% ls -l test -rwxrwx--x 1 gordybh cohorts 20 Dec 13 20:22 test grex.cyberspace.org% cat test #!/bin/sh echo test... (2 Replies)
Discussion started by: wmosley2
2 Replies

2. UNIX for Dummies Questions & Answers

SCCS - A slight scripting issue

I used %H%M for hours and minutes within a date variable, to latch the date/time onto the end of a file, the script it was in is now under SCCS control and the %H% is a predefined parameter for SCCS, so it tags a date with a "/" character in it. Is there a way to tell SCCS to ignore anything... (0 Replies)
Discussion started by: tangent
0 Replies

3. Shell Programming and Scripting

CMP two files with slight difference and return code

I am comparing two files which are identical except for the timestamp which is incorporated within the otherwise same 372 bytes. I am using the command: cmp -s $Todays_file $Yesterdays_file -i 372 When I run the command without the -i 372 it shows the difference i.e. the timestamp.... (5 Replies)
Discussion started by: gugs
5 Replies

4. Shell Programming and Scripting

Perl script error

Hi all I keep getting a segmentation fault error while running the script below. #!/usr/bin/perl -w use CGI ':standard'; use GD::Graph::pie; use strict; use warnings; sub trim($) { my $string = shift; $string =~ s/^\s+//; $string =~ s/\s+$//; ... (4 Replies)
Discussion started by: pietie
4 Replies

5. Shell Programming and Scripting

Need help with a slight modification to my PERL script

Hi all, So I have a script that reads a file called FILEA.txt and in that file there are several columns. The ones that are most important are the $name $start and $stop. So currently the script takes values between the start and stop (inside) by using a program called fastamd. But what I... (4 Replies)
Discussion started by: phil_heath
4 Replies

6. Shell Programming and Scripting

How to merge two files with a slight twist

Hi, a brief introduction on the soundex python module(english sound comparison): import soundex.py a = "neu yorkk" b = "new york city" print soundex.sound_similar(a, b) output: 1 Suppose I want to merge two files, called mergeleft.csv and mergeright.csv Mergeleft.csv: ... (0 Replies)
Discussion started by: grossgermany
0 Replies

7. Linux

Slight Linux Upgrade

Hello Ya'all: I hope Zaxxon is still around. I read a posting about compiling/updating the kernel from source. I'm doing a very specific upgrade, and am wondering if there is anything different or if there's an easy way to do this: I am using kernel version 2.6.18-92, and have done some... (1 Reply)
Discussion started by: Statue
1 Replies

8. Programming

getting error in my perl script

hi Here is my code written to identify the particular position which is after a string (chr*). my input file looks some thing like this aaanbb:anhn:iuopl:12345 chr1 12345 asnmkol * # kjiiii.....anmkij:lpolk:lopll:abnnj chr5 123222 polko * dddfgg .... aaanbb:anhn:iuopl:aanjuj chr2 44345 asnmkol... (1 Reply)
Discussion started by: anurupa777
1 Replies

9. UNIX for Dummies Questions & Answers

[Solved] Slight variation from the desired results

Hello, I am writing a small one liner script to display the tables in my database. I am working with Centos 5.5 and postgresql the command is "psql -c "\dt" | awk '{print$3}'" I just want the 3rd column from the result set, but now the problem is I am getting the third column but with... (3 Replies)
Discussion started by: nnani
3 Replies
answer(1)						      General Commands Manual							 answer(1)

NAME
answer - phone message transcription system SYNOPSIS
DESCRIPTION
The interactive program helps you to transcribe telephone (and other) messages into electronic mail. The program uses your personal alias database and the system alias database, allowing you to use aliases to address the messages. Options supports the following options: Prompt for phone-slip-type message fields. Allow addresses that are not aliases. Operation begins with the prompt. Enter a one-word alias or a two-word user name ("Words" are separated by spaces.) The user name is converted to an alias in the form where f is the first character of the first word, lastword is the second word, and all letters are shifted to lower- case. For example, is converted to the alias Without the option, the specified or converted alias must exist in the alias databases. With the option, if the processed "alias" is not in the alias databases, it is used for the address as is. The fully expanded address is displayed. With the option, you are asked for typical message slip data: Enter the appropriate data. You can put just an or nothing after the pertinent dash prompts, or you can type longer comments. Whatever you enter becomes part of the message. Lines with no added text are omitted from the message. Finally, you are prompted for a message. Enter a message, if any, ending with a blank line. The message is sent and the prompt is repeated. To end the program, enter any one of or at the prompt. EXAMPLES
User input is in normal type. With No Options This example shows a valid alias, an invalid user name, and a valid user name. In the invalid case, the converted alias is displayed in square brackets. With the -u Option If you enter the previous error is treated differently. With the -p Option If you enter the phone-slip prompts are added. The three lines with no added text are deleted from the message. FILES
User alias database data table User alias database directory table User alias database hash table User alias source text System alias database data table System alias database directory table System alias database hash table System alias source text Outbound mail message edit buffer AUTHOR
was developed by HP. SEE ALSO
elm(1), newalias(1). answer(1)
All times are GMT -4. The time now is 08:43 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy