jesuashok, your recent posts seem to mostly consist of code snippets that are suspiciously impractical, followed by the question "please explain".
in reply to close ARGV inside a while
I don't mind that much, but please try to be more clear about why you think the output is strange. At the very least, try to provide an example of what you think the output should be.
If you don't do that we end up going round and round and in the end still won't know what's going wrong for you.
I'm not even going to attempt to answer your post here until you explain what you think is wrong with the output, since it seems too obvious to me why it does what it does.