Content-type: text/html
Manpage of GTKFIND
GTKFIND
Section: User Commands (1)
Updated: gtkfind
Index
Return to Main Contents
NAME
gtkfind - a graphical file finding program
SYNOPSIS
gtkfind
[-vanish] [-help] [-version]
DESCRIPTION
gtkfind
is a graphical find program written using the GTK+ toolkit. Operation
should be straightforward. By default the program will search the /
directory and match all files and directories. You can narrow the
match by using shell wildcards and curly braces. There are also other
file attributes you can match against, like owner and type.
TUTORIAL
First you must choose a directory in which to search. You can just
type the directory name, or you can use the
Choose Directory
button. This button brings up a file browser which you can use to
select a directory. You can also select whether or not you want to
search the subdirectories of the directory you have chosen. You may
use the ~ (tilde) character to specify a user's directory, as you
would in the shell. For example,
~
will search your home directory, and
~/src
will search the directory src under your home directory.
Similarly,
~mattg
will search the home directory of user mattg.
Next, you must decide which files you want to match. Each "card" has
settings you can use to select a file. Keep in mind that you don't
have to fill in all the cards. The default is to match everything.
Filename
On this card, you can enter the name of the file you want to match.
If the
simple substring
button is selected, the find will match any filename containing the
string you enter. For example, the string
.txt
will match the files foo.txt and bar.txt, but not the file baz.text.
If the
wildcard pattern
button is selected, you can use the following
wildcard characters just like in the shell:
* - this character will match any or no characters. For
example, the pattern
*.txt
will match files named foo.txt and .txt, but not foo.text.
? - this character will match any one character. For
example,
wibble.?
will match files named wibble.c and wibble.s, but
not wibble. or foo.c.
[..] - square braces can be used to show a set of characters,
any one of which will match. For example,
*.[ch]
will match foo.c and
foo.h. A - inside the braces can be used to match a range, for
example
[1-5]
will match the characters 1,2,3,4,5. You can match an [
or ] by putting them last or first, eg
[[]
will match
[.
{..} - curly braces will match comma separated strings. For
example, the pattern
{foo,bar}.c
will match foo.c and bar.c.
(..) - parentheses will store portions of the match in
registers. A gtkfind register is a place where a string is stored.
There are 10 registers, and by default the complete name of the file
that is matched is stored in register 0. The nine other registers are
filled left to right. So the pattern
(*)-backup.(??)
which matches the file named TUES-backup.18, stores the string
"TUES-backup.18" in register 0, the string "TUES" in register 1, and
the string "18" in register 2. You can insert these register values
into a shell command which you can run when you match a filename.
This is explained under
Shell Commands
below.
atime
This card allows you to match a file's access time. This is the last
time that the file was read or executed. You can manipulate the
counters to set the time and date. Hours are given in military or
24-hour time. You can
choose whether you want to match files with access times earlier than,
equal to, or later than the time you have entered. This is not an
exclusive or; you can match files that have atimes earlier than or
equal to the time you have specified.
ctime
This is exactly the same as the atime card above, except that it
matches against the last time the file's inode was changed. This
happens whenever a file is created, when its atime or mtime is
changed, when its mode is changed, and other times too.
mtime
Ditto, except that this matches against mtime, which is the last time
a file was modified, ie written to. If you are curious about these
times, you can use the
stat(1)
program to find out the atime, mtime,
and ctime of files.
Mode
This card allows you to match against a file's mode or permissions.
You can match against multiple permissions.
Type
This card allows you to match against a file's type. This includes
whether the file is a directory, a regular file, or any of the special
files (symbolic links, devices, etc.). You can also match against
files that have the setuid, setgid, or sticky bits set.
Owner
Here you can match against a file's owner or group. You can choose to
match against the login name or group name (such as mattg), or against
the User ID or Group ID numbers (uid or gid).
Contents
This card lets you enter a simple substring or
wildcard pattern to match against the
contents of files. For example, to match all files containing the
string
linux
you would either select the
simple substring
option and enter
linux
, or select the
wildcard pattern
option and enter the pattern
*linux*.
Shell Commands
When you are done selecting the criteria to match a file against, you
get to choose what you want to do with the files that meet those
criteria. The default action is to display the filenames in a
window. You can also choose to print the filenames to the standard output, or
not to print anything at all.
If the
Print extra data
radio button is selected, data about matched files is printed in a format
similar to the format of
ls -l.
The default is to simply print the filenames, one per line.
One thing you might want to do now is run a shell command on
each file as it is matched. To do this, select the
Run a shell command
box and enter the text of your command in the text space provided.
You can insert a register by
using the characters \register-number.
So for example, given the pattern
(*).txt
you can use the command line mv \0 \1.old
to move the files foo.txt and bar.txt to foo.old and bar.old,
respectively.
Finding Files
When you have selected the criteria you want to match against and
decided whether or not you want to run a shell command against the
files you match, you can click the
Find
button to run the search. Depending on whether you selected
Print to stdout
or
Print to window
the results will be printed to the standard output of gtkfind or will
be displayed in a window. If the
Always print filename
button is selected, gtkfind will print the name of each file that
matches its criteria. The output of any shell commands run on a file
will appear beneath the filename. This is often helpful when running
shell commands.
While the search is running, a
Stop
button will appear in place of the
Find
button. Clicking this button will stop the search.
The
Quit
button quits gtkfind. The
Clear
button clears all search criteria, but does not change the
Shell command
or
Search directory
settings.
The
Help
button opens an
xterm(1)
showing this manual page, if this manual page is installed on your
system.
The
Save
button will save your search as a shell script using
find(1).
You can then run the search from the prompt. Note that if you want to
run additional shell commands on the files you find, you will have to
add them to the file manually (only the search is saved). Note also
that if you do not have the GNU utilities these shell scripts may not
work. You can get the GNU tools from
ftp.gnu.org
and many other sites.
OPTIONS
- -vanish
-
Exit after the first run. By default, the program sticks around and
can be used multiple times.
- -help
-
Print a helpful message to standard output and exit.
- -version
-
Print the program version to standard output and exit.
BUGS
There are almost certainly bugs. If you encounter one, please report
it to the maintainer.
SEE ALSO
find(1),
file(1),
grep(1),
mktmp(1),
stat(1),
touch(1)
COPYLEFT
gtkfind
is copyright 1999 by Matthew Grossman
<mattg@oz.net>
under the terms of the GNU GPL. See the file
COPYING
in the source distribution for details.
MAINTAINER
mattg@oz.net
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- TUTORIAL
-
- Filename
-
- atime
-
- ctime
-
- mtime
-
- Mode
-
- Type
-
- Owner
-
- Contents
-
- Shell Commands
-
- Finding Files
-
- OPTIONS
-
- BUGS
-
- SEE ALSO
-
- COPYLEFT
-
- MAINTAINER
-
This document was created by
man2html,
using the manual pages.
Time: 02:27:58 GMT, May 31, 2005