12-07-2010
The most common cause of lsof or similar being unable to resolve the real pathname a file descriptor is pointing to is that the file has been removed after being opened, but isn't closed yet.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I am trying to find a way to check the current status of a file. Such as some cron job processes are dependent on the completion of others. if a file is currently being accessed / modified or simply open state I will wait until it is done being processed before attempting the next process on that... (3 Replies)
Discussion started by: Gary Dunn
3 Replies
2. UNIX for Dummies Questions & Answers
What is a file descriptor in Unix??
How to find a file descriptor of a file in Unix??
Does it have anything to do with the Inode numbers?? (3 Replies)
Discussion started by: rahulrathod
3 Replies
3. Shell Programming and Scripting
Hello All,
Im opening a file desciptor in perl and sending data using print CMD "$xyz".
is there a limit to the length of the string that I can give to this CMD at a time. (3 Replies)
Discussion started by: rimser9
3 Replies
4. UNIX for Dummies Questions & Answers
Hi
What the below path contains?
/proc/<pid>/fd (1 Reply)
Discussion started by: siba.s.nayak
1 Replies
5. Shell Programming and Scripting
I have to create a user interface in which user can easily update ,delete or insert a new record which is pointing to a file in AIX Server?
Using awk,sed ican update ,modify the file.
how to create a link to userlike GUI(without using Tomcat,IIS) (3 Replies)
Discussion started by: laknar
3 Replies
6. Shell Programming and Scripting
Hi,
i have a sql file named sample.sql. The query is given below.
select count(*) from $TABLE_NAME
In the main script, i am sourcing this sql. I need to replace the $TABLE_NAME with actual value, before running the query. How can i achieve that?
The logic i tried is given below:... (3 Replies)
Discussion started by: bharathappriyan
3 Replies
7. Solaris
I know how to check if any file has a unix process using a file by looking at 'lsof <fullpath/filename>' command.
I think using lsof is very expensive. Also to make it accurate we need to inlcude fullpath of the file.
Is there another command that can tell if a file has a truely active... (12 Replies)
Discussion started by: kchinnam
12 Replies
8. Shell Programming and Scripting
Hello,
I have a set of directories, which has inside them, symbolic links to some files. What i would like to do is to covert the links into actual files, i.e. remove the link and copy the actual file here...
I tried to see unlink command but i think all it does is delete the link, is... (2 Replies)
Discussion started by: prasbala
2 Replies
9. Shell Programming and Scripting
hello,
Someone can help me with redirectors?
I am writing this script in bash enviroment on Fedora:
exec 4<> /dev/tcp/10.10.11.30/5000 #open socket in input/output
strings<&4 >file.txt &
I send file descriptor 4 to string command to purge data stream from special char while come from... (3 Replies)
Discussion started by: rattoeur
3 Replies
10. Shell Programming and Scripting
I am very noobish to UNIX, our guy is on vacation so I am trying to take up some slack while he is away.
Typically when we use sql from within a shell script, we do so from a file containing the sql.
Example:
$ORACLE_HOME/bin/sqlplus $ORA_DBCU/$ORA_DBCP @${cron_dir}/${report_file}.sql
... (10 Replies)
Discussion started by: biobill
10 Replies
CLOSE(2) Linux Programmer's Manual CLOSE(2)
NAME
close - close a file descriptor
SYNOPSIS
#include <unistd.h>
int close(int fd);
DESCRIPTION
close() closes a file descriptor, so that it no longer refers to any file and may be reused. Any record locks (see fcntl(2)) held on the
file it was associated with, and owned by the process, are removed (regardless of the file descriptor that was used to obtain the lock).
If fd is the last file descriptor referring to the underlying open file description (see open(2)), the resources associated with the open
file description are freed; if the descriptor was the last reference to a file which has been removed using unlink(2) the file is deleted.
RETURN VALUE
close() returns zero on success. On error, -1 is returned, and errno is set appropriately.
ERRORS
EBADF fd isn't a valid open file descriptor.
EINTR The close() call was interrupted by a signal; see signal(7).
EIO An I/O error occurred.
CONFORMING TO
SVr4, 4.3BSD, POSIX.1-2001.
NOTES
Not checking the return value of close() is a common but nevertheless serious programming error. It is quite possible that errors on a
previous write(2) operation are first reported at the final close(). Not checking the return value when closing the file may lead to
silent loss of data. This can especially be observed with NFS and with disk quota.
A successful close does not guarantee that the data has been successfully saved to disk, as the kernel defers writes. It is not common for
a file system to flush the buffers when the stream is closed. If you need to be sure that the data is physically stored use fsync(2). (It
will depend on the disk hardware at this point.)
It is probably unwise to close file descriptors while they may be in use by system calls in other threads in the same process. Since a
file descriptor may be reused, there are some obscure race conditions that may cause unintended side effects.
SEE ALSO
fcntl(2), fsync(2), open(2), shutdown(2), unlink(2), fclose(3)
COLOPHON
This page is part of release 3.27 of the Linux man-pages project. A description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.
Linux 2007-12-28 CLOSE(2)