12-13-2007
Quote:
Originally Posted by
fishman2001
Is there any way to check that the socket is still alive before sending data?
option 1. Use select() to tell you if there is anything to read and when you can write, if the connection drops then you will be told you can read something and will then get the appropriate error returned by "recv", only "send" if select tells you can write.
option 2. install a SIGPIPE signal handler around the send() to catch any raised signal, then restore the handler after the send.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi
This will be useful who is looking for checking the files in a directory
#chmod 777 /cronacle/tools/teradata/opo/bin/file_check.sh
SUBJECT=`echo "File Not Found"`
SUBJECT1=`echo "File Found"`
#RECIPIENT=Madhu.Reddy@ge.com
cd /cronacle/tools/teradata/opo/bin
file_list=attach.sh
if
... (3 Replies)
Discussion started by: ksmbabu
3 Replies
2. Shell Programming and Scripting
How can I check if a file exists in shell script. Basically, I want to check if a file Test_msgs has been created today. If it has been then append data to it. Otherwise, create it. I have written the following but it does not work.
todaysdate=$(date +%d%m%Y)
timenow=$(date +%H%M%S)... (4 Replies)
Discussion started by: gugs
4 Replies
3. Shell Programming and Scripting
Hai All,
please help me in solving this assignment!!!
i need a unix script that has to check the text file exists or not in all directories and sub directories if textfile exists display the directory path else display does not exists!!
example: kamal.txt that i want to search if the... (5 Replies)
Discussion started by: G.K.K
5 Replies
4. Shell Programming and Scripting
How can I check if a file exists in csh? I know there is "-e $file" but do not know exactly how to use it.
I have tried the below but I'm getting "Bad : modifier in $ ( )."
foreach f ($AfullnameLst)
if (-e $f) then
echo "$f: file exists"
endif
end (6 Replies)
Discussion started by: kristinu
6 Replies
5. Shell Programming and Scripting
Hi All,
what is the difference between -f and -e.
Regards,
ch33ry (1 Reply)
Discussion started by: ch33ry
1 Replies
6. Shell Programming and Scripting
Hi Everyone,
I am writing a shell script for the below needs and would like your suggestions and advices.
I have a lot of scripting files(Shell Scripts) under the directory:
/home/risk_dev/dev
I have another directory which has a lot of shell scripts under the directory:
... (2 Replies)
Discussion started by: filter
2 Replies
7. Shell Programming and Scripting
Hey, I am new to scripting and was wondering what is wrong with this if statement. I want to check if file exists and the if it does to unzip it. I program it as follows
if ; then
gunzip *_filename.gz
fi
Thanks in advance!
Please use code tags next time for your code and data. (10 Replies)
Discussion started by: mostarac2487
10 Replies
8. Shell Programming and Scripting
Hi All,
I am facing a problem while checking for existence of file over ssh !
Basically, i want to ssh and check if file exists.. If file exists return 1. If file does not exits return 0 (or any value)
I am using the below code
file_avail=`ssh username@host "if ]; then exit 1;... (10 Replies)
Discussion started by: galaxy_rocky
10 Replies
9. Shell Programming and Scripting
In several scripts that process files matched by name pattern I needed to add a check for file existence. Just to illustrate let's say I need to process all N??? files:
/tmp$ touch N100 N101
/tmp$ l ?10
-rw-rw-r-- 1 moss group 0 Apr 19 11:22 N100
-rw-rw-r-- 1 moss group ... (10 Replies)
Discussion started by: migurus
10 Replies
10. UNIX for Beginners Questions & Answers
Hi,
I am writing the shell script in ksh to check certain no of files exists,In my case there are 7 files exist like below
Sales1_timstamp.csv
Sales2_timstamp.csv
Sales3_timstamp.csv
Sales4_timstamp.csv
Sales5_timstamp.csv
Sales7_timstamp.csv
Sales7_timstamp.csv
Once all the files... (4 Replies)
Discussion started by: SRPR
4 Replies
LEARN ABOUT DEBIAN
io_trywrite
io_trywrite(3) Library Functions Manual io_trywrite(3)
NAME
io_trywrite - write to a descriptor without blocking
SYNTAX
#include <io.h>
int io_trywrite(int64 fd,const char* buf,int64 len);
DESCRIPTION
io_trywrite tries to write len bytes of data from buf[0], buf[1], ..., buf[len-1] to descriptor fd. (The effects are undefined if len is 0
or smaller.) There are several possible results:
o o_trywrite returns an integer between 1 and len: This number of bytes was immediately written from the beginning of buf. Note that this
number can be, and often is, smaller than len; you must not assume that io_trywrite always succeeds in writing exactly len bytes.
o io_trywrite returns -1, setting errno to EAGAIN: No bytes were written, because the descriptor is not ready. For example, the descriptor
is writing to a full pipe that could still be read.
o io_trywrite returns -3, setting errno to something other than EAGAIN: No bytes were written, because the write attempt encountered a
persistent error, such as a serious disk failure (EIO), an unreachable network (ENETUNREACH), or an invalid descriptor number (EBADF).
io_trywrite does not pause waiting for a descriptor that is not ready. If you want to pause, use io_waitread or io_wait.
You can make io_trywrite faster and more efficient by making the socket non-blocking with io_nonblock().
Once upon a time, many UNIX programs neglected to check the success of their writes. They would often encounter EPIPE, and would blithely
continue writing, rather than exiting with an appropriate exit code. The UNIX kernel developers decided to send a SIGPIPE signal, which
terminates the process by default, along with returning EPIPE. This papers over the problem without fixing it: the same programs ignore
other errors such as EIO. One hopes that the programs have been fixed by now; kernels nevertheless continue to generate the SIGPIPE signal.
The first time io_trywrite or io_waitwrite is called, it arranges for SIGPIPE to be ignored. (Technically, for SIGPIPE to be caught by an
empty signal handler, so this doesn't affect child processes.) Do not use SIGPIPE elsewhere in the program.
SEE ALSO
io_nonblock(3), io_waitread(3), io_trywritetimeout(3)
io_trywrite(3)