Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Answer: How do you simulate the use of the keyboard ?

by httptech (Chaplain)
on May 10, 2000 at 15:59 UTC ( #10933=categorized answer: print w/replies, xml ) Need Help??

Q&A > input and output > How do you simulate the use of the keyboard ? - Answer contributed by httptech

Well, the keyboard is usually read using <STDIN> which is just another filehandle.

So say you have written a script that asks a few questions like:

print "What is your name? "; my $name = <STDIN>; chomp $name; print "What is your quest? "; my $quest = <STDIN>; chomp $quest; print "What is your favorite color? "; my $color = <STDIN>; chomp $color;
Now, if you want to test that out without actually having to type it into the keyboard, you can make a textfile like:
Anonymous Monk I seek the Wisdom of the Monastery Yellow...no, Blue! arghhhhhhhh!
Now, you can open that file in your program and assign it a filehandle <FOO>, ahead of where the questions are asked. Then, use a line like this: *STDIN = *FOO; (also before where you first start grabbing STDIN)

That allows you to alias STDIN to FOO and the file will be read instead of the keyboard while you are testing your program. When you're done testing, just remove the open statement and the *STDIN = *FOO line and you're all set.

Log In?
Username:
Password:

What's my password?
Create A New User
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (13)
As of 2016-12-07 17:39 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    On a regular basis, I'm most likely to spy upon:













    Results (131 votes). Check out past polls.