From: Matthias Schniedermeyer <ms@citd.de>
To: Valdis.Kletnieks@vt.edu
Cc: Michael Opdenacker <michael.opdenacker@free-electrons.com>,
ranjith kumar <ranjithproxy@gmail.com>,
linux-kernel@vger.kernel.org
Subject: Re: how to know list of files accessed
Date: Tue, 14 Feb 2012 09:26:56 +0100 [thread overview]
Message-ID: <20120214082656.GA5538@citd.de> (raw)
In-Reply-To: <8249.1329194664@turing-police.cc.vt.edu>
On 13.02.2012 23:44, Valdis.Kletnieks@vt.edu wrote:
> On Mon, 13 Feb 2012 13:32:56 +0100, Michael Opdenacker said:
>
> > An easy way is to run your command with 'strace' to trap all the calls
> > to 'open':
> >
> > strace make 2>&1 | grep open
>
> You really want 'strace -f make' - the -f flag makes it follow forks, which you
> want to do because it's gcc that's doing most of the actual file I/O, not make.
>
> Oh. and you want to redirect that grep into a temporary file and be
> prepared to post-process it with perl or something, there's going to be
> *zillions* of open() syscalls.
Inotify is certainly easier.
When inotifywait from inotify-tools is available:
inotifywait -m -r -e open <dir> > files.opened
This monitors recusivly for the "open" event and writes it into
files.opened.
In my case that is:
wc -l files.opened
1115553 files.opened
And this number of unique files with directories
sort < files.opened | uniq | wc -l
5454
And this number af unique fiels without dirs.
cat files.opened | grep -v ISDIR | sort | uniq | wc -l
3837
I use "O=../compile_dir" to get the output into another dir, if you
don't do that all newly created files are also counted, as you also
"open" them.
Bis denn
--
Real Programmers consider "what you see is what you get" to be just as
bad a concept in Text Editors as it is in women. No, the Real Programmer
wants a "you asked for it, you got it" text editor -- complicated,
cryptic, powerful, unforgiving, dangerous.
prev parent reply other threads:[~2012-02-14 8:27 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-13 11:30 ranjith kumar
2012-02-13 12:32 ` Michael Opdenacker
2012-02-14 4:44 ` Valdis.Kletnieks
2012-02-14 8:26 ` Matthias Schniedermeyer [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120214082656.GA5538@citd.de \
--to=ms@citd.de \
--cc=Valdis.Kletnieks@vt.edu \
--cc=linux-kernel@vger.kernel.org \
--cc=michael.opdenacker@free-electrons.com \
--cc=ranjithproxy@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome