Finger has gone crazy


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Finger has gone crazy
# 1  
Old 04-20-2010
Finger has gone crazy

Two things : On the first place i am really desperate, on the second i am about to throw my laptop away to the recycle bin in a while.

Ok now that i expressed my feeling let me describe you this mad situation.

Code:
Code:
print $1;
("finger -m " $1 "| head -1") | getline userinfo
print userinfo;

User ids are stored in $1, this code is inside an .awk file.

Random Output:
Code:
std01095
Login: std02188                         Name: Doukoudakis Athanasios
std02188
Login: std02188                         Name: Doukoudakis Athanasios
stud1265
Login: std02188                         Name: Doukoudakis Athanasios

I give users ids std01095, std02188, stud02188.
I am getting the same name. How the hell this happens?
(the above output is just an example, many similar errors appear on the screen unfortunately, but not all of them are wrong).

I am really really stuck, any help?Smilie
# 2  
Old 04-21-2010
Every getline is reading from the same pipe, which has nothing to send after the first getline command runs

Instead of...
Code:
("finger -m " $1 "| head -1") | getline userinfo

...try:
Code:
cmd="finger -m " $1 "| head -1"
cmd | getline userinfo
close(c)

Read up on getline and close in your awk's manual for more info.

Regards,
Alister
# 3  
Old 04-21-2010
Quote:
Originally Posted by alister
Every getline is reading from the same pipe, which has nothing to send after the first getline command runs

Instead of...
Code:
("finger -m " $1 "| head -1") | getline userinfo

...try:
Code:
cmd="finger -m " $1 "| head -1"
cmd | getline userinfo
close(c)

Read up on getline and close in your awk's manual for more info.

Regards,
Alister
No luck,
Output:
Code:
std05181
Login: std02188                         Name: Doukoudakis Athanasios
std01095
Login: std02188                         Name: Doukoudakis Athanasios
std02188
Login: std02188                         Name: Doukoudakis Athanasios
stud1265
Login: std02188                         Name: Doukoudakis Athanasios

# 4  
Old 04-21-2010
Woops. close(c) should be close(cmd).
# 5  
Old 04-21-2010
Quote:
Originally Posted by alister
Woops. close(c) should be close(cmd).
I think i am in love with you mate, you are my saviour.SmilieSmilie

If you don't mind can you explain this a bit to me?
When i use finger for a user id i get back a login and a name in the first row (with gaps in between).
With head -1 i want to hold only this first row and with getline i save this row into a variable. What's going wrong with it?

I mean why it's the same pipe if we change every time $1? Are you saying that finger was ok in addition to the last pipe along with getline?
# 6  
Old 04-21-2010
I'm guessing that you see these errors when $1 assumes a value it had already been assigned earlier. That pipe will still be open, getline will fail to read anything from it, and userinfo remains unchanged. If that's not the case, without seeing the code and input data that generate the errors, I have no idea.

Regards,
Alister
# 7  
Old 04-21-2010
Quote:
Originally Posted by alister
I'm guessing that you see these errors when $1 assumes a value it had already been assigned earlier. That pipe will still be open, getline will fail to read anything from it, and userinfo remains unchanged. If that's not the case, without seeing the code and input data that generate the errors, I have no idea.

Regards,
Alister
Mmm i think i got it, $1 has a new value every time but not all of them are fingered.Smilie So maybe this is the problem.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Crazy Syntax

Hello All, was looking at a script wrote by someone and when I try and run it in ksh it gives me an error. Could ksh version be a problem or is there something wrong that I'm missing, when I run it from the command line it works. Thanks! results=`sudo -u admin ssh... (1 Reply)
Discussion started by: akechnie
1 Replies

2. What is on Your Mind?

Here's To The Crazy One

Please excuse my indulgence. Thank you MG Siegler and Steve Jurvetson. But most importantly, thank you Steve Jobs. 8rwsuXHA7RA The world has lost a genius. (1 Reply)
Discussion started by: Scott
1 Replies

3. Homework & Coursework Questions

Crazy Dots

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: Create a script called DOTS that will display the horizontal or vertical number of dots if the first argument... (3 Replies)
Discussion started by: pchelpmtl
3 Replies

4. What is on Your Mind?

crazy dreams..

well, Wine is simply amazing.. I love it. the filesystems are great too -- never having to defragment, and not slowing down in time. I love the power of BASH. iptables.. but.. I had a vision. a crazy dream. what if, we could develop an installation system for Linux.. working pretty much... (3 Replies)
Discussion started by: ialoq
3 Replies

5. Shell Programming and Scripting

Pleas help..this is driving me crazy

Hi, I've created a script in csh that takes a file and checks it for mispelled words. Im almost done but I need to do two more things but I need help. First, when displaying an incorrect word to the user, I need to show the line of the input file that contains the word. Second,if the user... (0 Replies)
Discussion started by: hckygoli31
0 Replies

6. Shell Programming and Scripting

ftp going crazy

Dear Friends, I am having a crazy issue with ftp. I am doing 'mput' of 4 files (z1, z2, z3, z4) as below. But ftp transfers only every alternative file !! - ie; If I do mput z* for above, it sends only z1 and z3. Note that all the files are same and I tried this for several dummy files. All... (3 Replies)
Discussion started by: yoursdivu
3 Replies

7. UNIX for Advanced & Expert Users

Crazy mx record redirect

So here is the story i have hired an outside company to filter spam i have since changed the mx record on my server and i have locked down the firewall. Spam has stopped totally which is great however my mx record seem to be propagating back and forth between my old and my new one day it will be... (2 Replies)
Discussion started by: nbredthauer
2 Replies

8. Shell Programming and Scripting

going crazy with test???

oK, i know for sure that code = Y and var = N but no matter what this always prints ignore, never valid??????? if test "$code"="$var" ... (2 Replies)
Discussion started by: mich_elle00
2 Replies

9. UNIX for Dummies Questions & Answers

Oh no!! crazy script

Hi Could be stupid, but I can figure out... I have a script that downloads a file from a http server ( virus definitions file ). The thing is that when I run it from the console (bash) works fine, but when I put it in the root's cron it doesn't, and it generates a core file. example: ... (8 Replies)
Discussion started by: piltrafa
8 Replies

10. UNIX for Dummies Questions & Answers

unix driving me crazy

:( :confused: what is performed by the following unix command: grep -v Jane project1.txt and grep ' 5\..' janet.txt (1 Reply)
Discussion started by: Tendernisin
1 Replies
Login or Register to Ask a Question