Find and Edit Command in One

Have You Ever found a need to find a file for a particular pattern and then edit the same ??

Here is an easiest way....

At the UNIX prompt, Just type:

vi `find . -name "*" -exec grep -l "pattern" {} \; -print`

Where "pattern" is the string to be searched.
 

Renameing files with the find command

I am attempting to rename files in a directory tree, using the find command:
find . -name "file-src*" -exec mv {} file-tgt \;
however, this only moves the file to the current dir: I have also tried:
mv 'find . -name file-src' file-tar
find . -name "file-src*" -exec mv {file-tgt} \;
etc, but to no avail.
 

There might be better ways to do this.

for i in `find your_dir -type f -name '*'`
do
mv $i $i.mv
done
 

I've tried this statement, however I still get the syntax error for the move command; when I replace the mv with echo $i; it writes out the find argument.

e.g. with the move cmd:
for i in 'find . -type f -name "file*" '
do
mv $i $i.bak
done

Output is:
$mv: invalid option

and the echo $i

for i in 'find . -type f -name "file*" '
do
echo $i
done

'find . -type f -name "file*"
 

Are you using single quotes, or backticks? ' or `
Backticks will do what you want. (It's the ` character on the upper-left corner of a standard PC keyboard, usually with the ~ )

If you're using a shell like bash or ksh, you could do it like this:
[...] for each in $(find . -name blah) [...]
But most shells will recognize:
[...] for each in `find . -name blah` [...]
 

Dont use ' (single quote). Use ` (dont know what it is called but it is left to the '1' key on the key board and above 'TAB')
 

Good stuff -that works fine. Yah I've had some problems using the ' and ` with commands in the past ....

Have a Unix Problem
Do you have a UNIX Question?

Unix Books :-
UNIX Programming, Certification, System Administration, Performance Tuning Reference Books

Return to : - Unix System Administration Hints and Tips

(c) www.gotothings.com All material on this site is Copyright.
Every effort is made to ensure the content integrity.  Information used on this site is at your own risk.
All product names are trademarks of their respective companies.
The site www.gotothings.com is in no way affiliated with or endorsed by any company listed at this site.
Any unauthorised copying or mirroring is prohibited.