06-16-2008
find .... -exec rm .... \; works, but gives an error
I am using find to get all the instances of a given directory name, then remove those directories with a -exec rm command.
here is an example:
mkdir -p foo/bar
find foo -name bar -exec rm -rf {} \;
foo will get deleted as I desired, however this pops out on standard error:
find: foo/bar: No such file or directory
why does this error occur/how can i change the command to avoid the error? Thanks for the help =)
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi All,
i am writing a shell script in korn shell
which deletes all the files in a directory
once in every 10DAYS.
the directory has different format files.
the script has something like this;
cd /home/data/pavi
echo "Please Enter the Number of Days to search for"
read DAYS... (2 Replies)
Discussion started by: pavan_test
2 Replies
2. Shell Programming and Scripting
can we use |(pipe operator) with find -exec.....?
or can pipe the output of find command to another command...?
if not, why...?
pls explain (3 Replies)
Discussion started by: vijay_0209
3 Replies
3. Shell Programming and Scripting
Hi,
i would like to rename files in directories and subdirs.
Files contains specific french or strange caracters.
I want to replace all non alpha-numerics by _ (underscore)
First, i made this, but i think the "for" is limited.
How can i do this directly by FIND ?
for file in $(find .... (0 Replies)
Discussion started by: degraff63
0 Replies
4. UNIX for Dummies Questions & Answers
Hello All,
Is there a way to make exec do a couple of operations on a single input from find?
For example,
find . -type d -exec ls -l "{}" ";"
I would like to give the result of each "ls -l" in the above to a wc. Is that possible?
I want to ls -l | wc -l inside... (1 Reply)
Discussion started by: prasanna1157
1 Replies
5. UNIX for Advanced & Expert Users
Hi Gurues,
I need to modify an existing script that uses find to search a folder, and then move its contents to a folder. What I need to do is run gzip on each file after it's moved.
So, I ran this little test:
Put a ls.tar file on my $HOME, mkdir tmp, and then:
virtuo@tnpmprd01: find .... (3 Replies)
Discussion started by: llagos
3 Replies
6. Ubuntu
Hello,
I am a linux newbe. I want to install a program. I can download it only with wget command from internet.
As far as i know this wget command does not transfer the exacutable flags.
Because of that i wanted to find all configure files and change their mod to 744.
I found this... (1 Reply)
Discussion started by: disconnectus
1 Replies
7. Ubuntu
This is a huge issue. and I need it fixed ASAP.
account-system gate-system race_traffic_sensor
achievement-system global race_voicepack
admin glue-system realdriveby
admin-system gps realism-system... (5 Replies)
Discussion started by: austech360
5 Replies
8. Shell Programming and Scripting
Greetings,
Everytime I use rm with find I get errors like find: ./test: No such file or directory
For exemple :
hostname> mkdir test
hostname> ls
test
hostname> find . -type d -name test -exec rm -rf {} \;
find: ./test: No such file or directory
hostname>ls
hostname> echo $?
1
... (2 Replies)
Discussion started by: Sekullos
2 Replies
9. Shell Programming and Scripting
Hi Friends,
Please help me to sort out this problem, I am running this in centos o/s and whenever I run this script I am getting "find: missing argument to `-exec' " but when I run the same code in the command line I didn't find any problem. I am using perl script to run this ... (2 Replies)
Discussion started by: ramkumarselvam
2 Replies
10. Shell Programming and Scripting
Guys,
I want to find the log files greather than 23 days and i want to perform 2 things here.
one is to list the files and second is to gzip the files. hope this can be done using sh -c option. but not sure the exact command.
find . -name "*.log" -mtime +23 -exec ls -la {} \;
... (5 Replies)
Discussion started by: AraR87
5 Replies
FIND(1) General Commands Manual FIND(1)
NAME
find - find files meeting a given condition
SYNOPSIS
find directory expression
EXAMPLES
find / -name a.out -print
# Print all a.out paths
find /usr/ast ! -newer f -ok rm {} ;
# Ask before removing
find /usr -size +20 -exec mv {} /big ;
# move files > 20 blks
find / -name a.out -o -name '*.o' -exec rm {};
# 2 conds
DESCRIPTION
Find descends the file tree starting at the given directory checking each file in that directory and its subdirectories against a predi-
cate. If the predicate is true, an action is taken. The predicates may be connected by -a (Boolean and), -o (Boolean or) and ! (Boolean
negation). Each predicate is true under the conditions specified below. The integer n may also be +n to mean any value greater than n, -n
to mean any value less than n, or just n for exactly n.
-name s true if current filename is s (include shell wild cards)
-size n true if file size is n blocks
-inum n true if the current file's i-node number is n
-mtime ntrue if modification time relative to today (in days) is n
-links ntrue if the number of links to the file is n
-newer ftrue if the file is newer than f
-perm n true if the file's permission bits = n (n is in octal)
-user u true if the uid = u (a numerical value, not a login name)
-group gtrue if the gid = g (a numerical value, not a group name)
-type x where x is bcdfug (block, char, dir, regular file, setuid, setgid)
-xdev do not cross devices to search mounted file systems
Following the expression can be one of the following, telling what to do when a file is found:
-print print the file name on standard output
-exec execute a MINIX command, {} stands for the file name
-ok prompts before executing the command
SEE ALSO
test(1), xargs(1).
FIND(1)