12-15-2016
This is going to be a royal pain to do in the shell. You're going to get stuck waiting on input from the web service while the web browser is stuck waiting on input for you. Named pipes are prone to this, even used one-way -- using a pair means almost guaranteed deadlock.
If you have Python or Perl, I'd look into writing it in that language instead. You would use a socket directly, avoiding the need for these deadlocks.
Another alternative, which I know you didn't want, would be the expect language. It can work pretty much the way you were expecting - run a program, check if it's got input, check if it's got output, decide what do do with it, move on.
10 More Discussions You Might Find Interesting
1. Programming
Hi Folks
I am not a c programmer .But i need help in writing a program which can do this any ideas on how to go about it .
i start a server on the target server where files need to be copied
start-server -port 5006 & ---start the server and listen it on a partcular port
on the source... (2 Replies)
Discussion started by: linuxdba
2 Replies
2. UNIX for Advanced & Expert Users
I'd like to do a data transfer without encryption but with a guarantee that my data comes from a legit source. I'm thinking something that uses a public key scheme to sign the data.
Does anyone know of something like that?
Thanks!
-Pileofrogs (1 Reply)
Discussion started by: pileofrogs
1 Replies
3. Shell Programming and Scripting
Is there a way how to react on the message a client sent to the server?
I would like as the client sent message to server: "get information such and such" and server would answer.
Thank you for reply! (6 Replies)
Discussion started by: MartyIX
6 Replies
4. UNIX for Advanced & Expert Users
Hi all,
When using netcat to transfer the data over socket, if no connection is established, how long will netcat keep the data; will it discard the "oldest" data ?
Say for example I use "Some Command | netcat -l -p port", the command I use will generate a lot of output constantly, while no... (2 Replies)
Discussion started by: qiulang
2 Replies
5. UNIX and Linux Applications
Please direct me to the right forum tree if i am in the wrong section for this.
i have netcat on a unix machine and there is no man nc or man netcat available.
my command i am using is:
cat $FILE1 | netcat -h $PRINTER -p 9100
(-h -p -d are the only flags available in this version of... (3 Replies)
Discussion started by: dunpealslyr
3 Replies
6. Solaris
hello guys, i want to install netcat on my solaris. after i tar and gunzip netcat i'm confuse what do i must to do ? please help me to install netcat on my solaris. I'm beginner :( (2 Replies)
Discussion started by: praset
2 Replies
7. Linux
Hello,
Thank you very much for the line nc -lp <port> . I tried to run simple chat session with nc as it's shown in catonmatDOTorg but failed miserably with that syntax inspite of opening port 7777 by iptables . But your command example is working nicely.
So a bagful of thanks :))
Only one... (0 Replies)
Discussion started by: vectrum
0 Replies
8. Shell Programming and Scripting
Hi;
I have a url like
http://localhost:8080/examples/jsp/dates/nextPageToPost.jsp?name=ajay&password=pas&sex=Male&check=on&nationality=USA&description=aa&submit=submit
in which i want to use nc for http post for parameters like "name","password"....etc
can neone please help me how to do that... (3 Replies)
Discussion started by: ajaypadvi
3 Replies
9. IP Networking
Hi all,
I know my question is regarding Windows and not Linux, but I simply need people who know Netcat pretty well and I'm guessing here is a good place for that. So on with my question.
I'm doing some research, and I was playing around with netcat on a WinXP VM but I can't seem to get... (0 Replies)
Discussion started by: MrCrumbs
0 Replies
10. UNIX for Advanced & Expert Users
Currently I run a number of network tests using netcat that checks for an open port on a remote IP-address, using this syntax:
netcat -v -w 5 -z 107.249.95.5 4488
For some reason, the netcat command above is hanging (although others work fine), but a telnet is showing a valid connection like... (4 Replies)
Discussion started by: ckmehta
4 Replies
LEARN ABOUT DEBIAN
multitee
multitee(1) General Commands Manual multitee(1)
NAME
multitee - send multiple inputs to multiple outputs
SYNTAX
multitee [ -bsize ] [ -vQq ] [ fd-fd,fd,fd... ] ...
DESCRIPTION
multitee sends multiple inputs to multiple outputs. Given an argument of the form fdin-fdout,fdout,fdout... it will send all input on
file descriptor fdin to each descriptor fdout. It will exit when all fdin are closed. Several arguments may specify outputs from the same
fdin.
-fdout and ,fdout are equivalent. If there is an error of any sort (including SIGPIPE) in writing to fdout, multitee prints a warning on
stderr and forgets fdout entirely. (This doesn't affect reads on fdin.) If -fdout is replaced by :fdout then multitee will exit upon any
SIGPIPEs from that descriptor.
Furthermore, efd means that as soon as fdin reaches end of file, fd is considered to reach EOF as well. multitee will warn about any input
errors and then treat them like EOF.
Unlike tee, multitee tries its best to continue processing all descriptors even while some of them are blocked. However, it will get stuck
reading if someone else is reading the descriptor and grabs the input first; it will get stuck writing if an input packet does not fit in
an output pipe. (If the output descriptor has NDELAY set, and multitee receives EWOULDBLOCK, it writes one byte at a time to avoid pipe
synchronization problems.) While it is tempting to set the descriptors to non-blocking mode, this is dangerous: other processes using the
same open file may not be able to deal with NDELAY. It is incredible that none of the major UNIX vendors or standards committees has come
up with true per-process non-blocking I/O. (Under BSD 4.3 and its variants, multitee could send timer signals to itself rapidly to inter-
rupt any blocking I/O. However, this cannot work under BSD 4.2, and is generally more trouble than it's worth.) A program can set NDELAY
before invoking multitee if it knows that no other processes will use the same open file.
multitee will also temporarily stop reading an input descriptor if more than 8192 bytes are pending on one of its output descriptors. This
does not affect independent fdin-fdout pairs.
multitee has several flags:
-bsize Change input buffer size from 8192 to size. Unlike the previous version of multitee, this version does not require output buf-
fers, and does not copy bytes anywhere between read() and write().
-v Verbose.
-q Quiet. multitee will not use stderr in any way (except, of course, if descriptor 2 is specified in an argument).
-Q Normal level of verbosity.
EXIT VALUE
0 normally. 1 for usage messages. 3 if multitee runs out of memory. 4 in various impossible situations.
DIAGNOSTICS
fatal: out of memory
multitee has run out of memory.
warning: cannot read descriptor
Self-explanatory.
warning: cannot write descriptor
Self-explanatory.
EXAMPLES
multitee 0-1,4,5 4>foo 5>bar
Same as tee foo bar except for better blocking behavior.
multitee 0:1 3:1 4:1,2 6:7
Merge several sources into the output, meanwhile copying 6 to 7 and recording 4's input in 2.
tcpclient servermachine smtp multitee 0:7 6:1e0
Same as mconnect on Suns. The e0 tells multitee to quit as soon as the network connection closes.
RESTRICTIONS
multitee expects all descriptors involved to be open. Currently a closed descriptor acts like an open descriptor which can never be writ-
ten to.
BUGS
None known.
VERSION
multitee version 3.0, 7/22/91.
AUTHOR
Placed into the public domain by Daniel J. Bernstein.
SEE ALSO
tee(1)
multitee(1)