LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices


Reply
  Search this Thread
Old 11-29-2011, 11:58 AM   #1
minivy
LQ Newbie
 
Registered: Nov 2011
Posts: 15

Rep: Reputation: Disabled
How To Search For A File


Hi Linux fans,

My code includes the following files but I was not abled to locate them. If you know how to locate/search these files, please help.

#include <asm/ptrace.h>
#include <trace/events/irq.h>

Thanks in advance...
 
Old 11-29-2011, 12:24 PM   #2
thesnow
Member
 
Registered: Nov 2010
Location: Minneapolis, MN
Distribution: Ubuntu, Red Hat, Mint
Posts: 172

Rep: Reputation: 56
Are you asking if they exist on your system, but are not in the specified path? You can use mlocate to find files by name, e.g. "mlocate ptrace.h" (may want to run "updatedb" first).
 
Old 11-29-2011, 12:29 PM   #3
tronayne
Senior Member
 
Registered: Oct 2003
Location: Northeastern Michigan, where Carhartt is a Designer Label
Distribution: Slackware 32- & 64-bit Stable
Posts: 3,541

Rep: Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065
There are a couple of ways: user locate or use the find utility.

locate will "locate" all instances of a given file name (or part of a given file name); e.g.,
Code:
locate ptrace.h
/usr/src/linux-2.6.37.6/arch/parisc/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/powerpc/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/tile/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/arm/kernel/ptrace.h
/usr/src/linux-2.6.37.6/arch/arm/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-i386/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-i386/shared/sysdep/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-i386/shared/sysdep/skas_ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-ppc/shared/sysdep/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-ppc/shared/sysdep/skas_ptrace.h
/usr/src/linux-2.6.37.6/arch/um/include/shared/skas_ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-x86_64/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-x86_64/shared/sysdep/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-x86_64/shared/sysdep/skas_ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-ia64/sysdep/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-ia64/sysdep/skas_ptrace.h
/usr/src/linux-2.6.37.6/arch/microblaze/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/avr32/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/blackfin/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/frv/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/score/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/x86/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/h8300/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/sh/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/m68k/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/ia64/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/m32r/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/xtensa/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/mn10300/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/cris/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/cris/include/arch-v10/arch/ptrace.h
/usr/src/linux-2.6.37.6/arch/cris/include/arch-v32/arch/ptrace.h
/usr/src/linux-2.6.37.6/arch/alpha/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/mips/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/sparc/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/s390/kernel/compat_ptrace.h
/usr/src/linux-2.6.37.6/arch/s390/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/include/linux/ptrace.h
/usr/doc/ntp-4.2.6p3/html/ntptrace.html
/usr/include/linux/ptrace.h
/usr/include/sys/ptrace.h
/usr/include/asm-x86/ptrace.h
That's a lot of stuff to wade through, but it can be handy. Before you can use the locate utility, you need to build the data base that's used by locate:
Code:
su -            or sudo
slocate -u
See the slocate manual page for details.

The find utility, on the other hand, is generally more useful for finding individual files; e.g.,
Code:
find / -type f -name 'ptrace.h' 2>/dev/null
/usr/src/linux-2.6.37.6/arch/parisc/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/powerpc/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/tile/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/arm/kernel/ptrace.h
/usr/src/linux-2.6.37.6/arch/arm/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-i386/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-i386/shared/sysdep/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-ppc/shared/sysdep/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-x86_64/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-x86_64/shared/sysdep/ptrace.h
/usr/src/linux-2.6.37.6/arch/um/sys-ia64/sysdep/ptrace.h
/usr/src/linux-2.6.37.6/arch/microblaze/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/avr32/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/blackfin/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/frv/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/score/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/x86/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/h8300/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/sh/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/m68k/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/ia64/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/m32r/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/xtensa/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/mn10300/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/cris/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/cris/include/arch-v10/arch/ptrace.h
/usr/src/linux-2.6.37.6/arch/cris/include/arch-v32/arch/ptrace.h
/usr/src/linux-2.6.37.6/arch/alpha/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/mips/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/sparc/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/arch/s390/include/asm/ptrace.h
/usr/src/linux-2.6.37.6/include/linux/ptrace.h
/usr/include/linux/ptrace.h
/usr/include/sys/ptrace.h
/usr/include/asm-x86/ptrace.h
Also a lot of stuff (the ones you want are at the bottom of this list).

Here's a hint: system header files will be somewhere in an include directory, almost always a subdirectory of /usr -- so when you're looking for a file included in a C program that's enclosed in <name.h>, it'll most likely be found looking in /usr:
Code:
find /usr -name 'ptrace.h'
Too, the reason for including the 2>/dev/null is that, as a user; i.e., not root, you will not be able to access certain directories or files and you'll get a lot of error message and what 2>/dev/null does is so you don't see the "can't access blah" messages.

Hope this helps some.

Last edited by tronayne; 11-29-2011 at 12:33 PM.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
How to do search & replace on a text file--need to extract URLs from a sitemap file Mountain Linux - General 4 08-07-2015 10:52 AM
How to search "file:///" in internet search engines? tirengarfio General 4 05-23-2009 07:56 PM
How to read string in 1 file and search in another file? ameyapandit Programming 7 07-11-2008 12:05 PM
Find File broken, need search utility, where does WineX install, KDE file roller? Ohmn Mandriva 6 07-05-2004 10:34 PM
How to 'apt-cache search' & 'apt-file search' by distribution? davidas Debian 3 04-19-2004 01:56 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 04:29 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration