06-06-2008
stop unix find on a directory structure after finding 1st occurrence
Hi,
Has anyone tried to restrict Solaris 10 unix find on a large directory structure based on time to stop running after finding the first occurrence of a matching query. Basically I'm trying to build up a usage map of user workspaces based on file modification (week/month/3 months/year etc) and I know if I can get find to stop after finding something modified in the last year in the very first directory instead of running to the bottom getting all files the program would run a lot faster:
Excerpt:
week=Yes; month=Yes; month6=Yes; year=Yes; year2=Yes
if [[ -z `find "${DIR}/${j}" -mtime -730` ]];then
week=No; month=No; month6=No; year=No; year2=No
else
if [[ -z `find "${DIR}/${j}" -mtime -365` ]];then
week=No; month=No; month6=No; year=No
else
if [[ -z `find "${DIR}/${j}" -mtime -180` ]];then
week=No; month=No; month6=No
else
if [[ -z `find "${DIR}/${j}" -mtime -30` ]];then
week=No; month=No;
else
if [[ -z `find "${DIR}/${j}" -mtime -7` ]];then
week=No;
fi
fi
fi
fi
fi
Thanks in advance,
John
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Does anyone know of a good Internet source that explains the directory structure of Unix/Linux??
Thanks
Gregg (2 Replies)
Discussion started by: gdboling
2 Replies
2. UNIX for Dummies Questions & Answers
Hi all
Is it possible to copy a structure of a directory only.
e.g.
I have a file with the following entries that is a result of a find :-
/dir1/dir2/file.dbf
/dir1/dir2/dir3/file1.dbf
/dir1/file.dbf
I want to copy these to a directory and keep the structure however starting at a new dir... (8 Replies)
Discussion started by: jhansrod
8 Replies
3. UNIX for Advanced & Expert Users
Hi,
I am trying to write a script that will move all the files from source directory structure(multiple levels might exist) to destination directory structure. If a sub folder is source doesnot exist in destination then I have to skip and goto next level. I also need to delete the files in... (4 Replies)
Discussion started by: srmadab
4 Replies
4. UNIX for Dummies Questions & Answers
Hello,
I just want to ask the following use of find command:
1. how can I find files only to the current directory?
2. how can I find files to directories and all subdiretories (are this include soft links?) but will not go to other mountpoints that is under that mountpoint.
Im combining... (1 Reply)
Discussion started by: james_falco
1 Replies
5. UNIX for Dummies Questions & Answers
Hi,
I'm new here so hello to everyone...i'm also new to linux/unix but got my first dedicated server about 2 weeks ago and have been using ssh to configure it on ubuntu linux.
I have a question about something i can't work out....if i use ftp to transfer files ( php, html, javascript files... (2 Replies)
Discussion started by: elduderino
2 Replies
6. UNIX for Dummies Questions & Answers
Hi,
I want to list all the last directories from mentioned base path.
for eg: If i have a base path say /base/base1/
How can i get the path till last node in tree like directory structure of unix by applying any command.
so that i will get following output.
... (7 Replies)
Discussion started by: Shiv@jad
7 Replies
7. Shell Programming and Scripting
I'm using this now:
find /some/path/with/sourcefiles -type f -size -7M -exec /bin/cp -uv {} /some/path/ \;
but it doesn't preserve the directory structure, also I've tried it with
find /some/path/with/sourcefiles -type f -size -7M -exec /usr/bin/rsync -auv {} /some/path/ \;
but that doesn't... (9 Replies)
Discussion started by: unclecameron
9 Replies
8. UNIX for Dummies Questions & Answers
Hi All,
im a new guy if it comes to Unix. I am trying to auto categorize Nzbget downloads the most basic way. I already manage to find files within the directory i'm at and move them with if check to a certain dir. Unfortunately this command is restricted to the directory i'm at and does not... (2 Replies)
Discussion started by: RoxXxoR
2 Replies
9. UNIX for Dummies Questions & Answers
Hi there, I'm trying to pull all my flacs out of my Music collection. I can do it with following command
find b/ -name *.flac -exec mv {} flac/ \;
which works great except it moves all the flac files to the flac folder. I want it to recreate the original folder the flacs were found in and mv... (8 Replies)
Discussion started by: fistikuffs
8 Replies
10. UNIX for Dummies Questions & Answers
Hi everyone, I'm a new member at the forum I mistakenly posted this elsewhere too.
I have a file like this: field 2 values are either 0 or negative. file test4:
100815 -20
118125 0
143616 0
154488 0
154488 0
154488 -6
196492 -5
196492 -9
196492 -7
27332 0... (5 Replies)
Discussion started by: meet77
5 Replies
LEARN ABOUT DEBIAN
chewmail
CHEWMAIL(1) User Contributed Perl Documentation CHEWMAIL(1)
NAME
chewmail - mail archiver
SYNOPSIS
chewmail [OPTIONS] <MAILBOX> ...
DESCRIPTION
chewmail is a program for archiving mail. It is inspired by the by the Python-based archivemail, but with more useful semantics. All mail
is archived to the mailbox specified with the --output-box switch, in mbox format. It can read mailboxes in mbox, Maildir and MH formats.
Internally, chewmail uses Mail::Box, so it support file names and URLs supported by that module.
OPTIONS
-o mailbox-format, --output-box=mailbox-format
The mailbox to archive messages to. The mailbox is run through the Date::Format module, so it supports all it's conversion specifiers.
The date and time is relative to the messages timestamp, or the current time if the timestamp is impossible to determine. A sample of
the conversion specifiers follows:
%% PERCENT
%b month abbr
%B month
%d numeric day of the month, with leading zeros (eg 01..31)
%e numeric day of the month, without leading zeros (eg 1..31)
%D MM/DD/YY
%G GPS week number (weeks since January 6, 1980)
%h month abbr
%H hour, 24 hour clock, leading 0's)
%I hour, 12 hour clock, leading 0's)
%j day of the year
%k hour
%l hour, 12 hour clock
%L month number, starting with 1
%m month number, starting with 01
%n NEWLINE
%o ornate day of month -- "1st", "2nd", "25th", etc.
%t TAB
%U week number, Sunday as first day of week
%w day of the week, numerically, Sunday == 0
%W week number, Monday as first day of week
%x date format: 11/19/94
%y year (2 digits)
%Y year (4 digits)
-d days-old, --days=days-old
Only archive messages older than than this many days.
-D date, --date=date
Only archive messages old than this date. The date can be any date understood by Perl's Date::Parse module.
-R, --only-read
Only archive messages that are marked seen or read.
--delete-immediately
Synchonize the mailboxes after every message is moved. This will be substantially slower but may provide better recovery for some mail-
box formats in the event of a crash.
--preserve-timestamp
Preserve the atime and mtime of the input mailbox. This only affects file-based mailboxes, such as mbox.
-n, --dry-run
Go through all the motions of archiving the mail, but don't actually change any mailboxes.
-v, --verbose
Output more informational messages. Use multiple times for more verbosity.
-q, --quiet
Don't output any messages other than error messages.
-V, --version
Print the version number then exit.
-h, --help
Print usage information then exit.
EXAMPLES
Archive two day old messages in inbox to inbox-old:
chewmail --days 2 -o inbox-old inbox
Archive read messages to a mailbox named the year-month of the message:
chewmail --only-read -o %Y-%m inbox
SEE ALSO
archivemail(1), Date::Parse, Date::Format, Mail::Box
AUTHOR
Eric Dorland <eric@kuroneko.ca>
perl v5.8.8 2006-08-15 CHEWMAIL(1)