command difference - find


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers command difference - find
# 1  
Old 02-14-2012
command difference - find

Hi,

What is the difference between these two?

Code:
find /some_dir -type f -exec chmod 070 {} \;

and

Code:
chmod 070 `find /some_dir -type f`

Thanks
# 2  
Old 02-15-2012
Quote:
Originally Posted by lamont
Hi,

What is the difference between these two?

Code:
find /some_dir -type f -exec chmod 070 {} \;

The command above will execute one chmod command for every file it finds. In theory less efficient because of the overhead of starting a new process for each file.

Quote:

Code:
chmod 070 `find /some_dir -type f`

The second command invokes one chmod process to set the permissions on all of the files that are discovered by find. The biggest potential problem with this command is that the number of files found could cause the command argument limit to be exceeded. If you are wanting to minimise the number of chmod processes that are started, this would be the best method:

Code:
find /path -type f | xargs chmod 0755

The xargs command will invoke chmod with the output from find, ensuring that the maximum argument limit isn't exceeded. If it has to, it will invoke chmod more than once, but you won't have a 1:1 ratio of chmod processes to files found.
# 3  
Old 02-15-2012
Quote:
Originally Posted by agama
The biggest potential problem with this command is that the number of files found could cause the command argument limit to be exceeded.
What's the maximum limit for the argument limit?
How to check in every OS?
Thanks
# 4  
Old 02-15-2012
You will check ARG MAX.
Code:
getconf ARG_MAX

# 5  
Old 02-15-2012
Quote:
chmod 070 `find /some_dir -type f`
In addition to possible problems with the command line being too long, this method will fail if any filename contains a space character.


@pandeesh
Please stop hijacking threads. There is no general answer to your specific question or to any question referring to "any OS".
# 6  
Old 02-15-2012
Quote:
Originally Posted by methyl
In addition to possible problems with the command line being too long, this method will fail if any filename contains a space character.
Great point; the xargs example I posted will have the same issue unless something like this is used:

Code:
find . |sed 's/^/"/; s/$/"/' |xargs chmod 755

 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

To find Difference

Hi Friends, I need to find the difference between two files , File_1 contained 4 columns, and File_2 contained 4 columns, I need to find the difference using 1st column, Or need to find the difference using 3st column, (6 Replies)
Discussion started by: Shenbaga.d
6 Replies

2. Shell Programming and Scripting

Find with in loops and then difference

Hi All, Please find my problem below: I have a file at two different nodes dev and test 1st find> find /u/dev/local/abc -name ab.dat --Since this file can be in several sub directories 2nd find> find /u/test/local/abc -name ab.dat I find my 1st find result and do compare with 2nd... (5 Replies)
Discussion started by: varun_bharadwaj
5 Replies

3. UNIX for Dummies Questions & Answers

Find time difference

I have a file wich contains time formats and i need to get the time difference TIME1 TIME2 =============== =================== 20120624192555.6Z 20120624204006.5Z which means first date 2012/6/24 19:25:55,second date 2012/6/24 20:40:06 so when i get the time... (23 Replies)
Discussion started by: wnaguib
23 Replies

4. Shell Programming and Scripting

How to find time difference?

I have a file wich contains time formats and i need to get the time difference TIME1 TIME2 ================================== 20120624192555.6Z 20120624204006.5Z which means first date 2012/6/24 19:25:55,second date 2012/6/24 20:40:06 so when i get the time... (1 Reply)
Discussion started by: wnaguib
1 Replies

5. Shell Programming and Scripting

To find difference between two files on a whole

Hi, The requirement is to compare two files that has single column of records each. Comparison is to happen on a whole and not line by line. File1.txt 314589929 315611087 304924413 315989094 301171509 302984393 315609549 314593632 File2.txt 315611087 304924413 315989094 (2 Replies)
Discussion started by: anandek
2 Replies

6. UNIX for Advanced & Expert Users

Find difference between 2 files

I have 2 files as follows. file1.txt <cell>123</cell> <cell>345</cell> file2.txt <cell>123</cell> <cell>456</cell> out out should be output.txt <cell>456></cell> How do we achieve this> The difference betwenn the two files should be wirtten to the output file.. ... (2 Replies)
Discussion started by: kanthrajgowda
2 Replies

7. UNIX for Dummies Questions & Answers

Find difference between two files

I have two files as below File1: a b c d File2: a b When i find the difference the output would be c&d.. How can i get my requirement...pls help... Many thanks in advance (10 Replies)
Discussion started by: jagadish_gaddam
10 Replies

8. Solaris

Need help to find difference between two files

I need to find the difference between two files in UNIX. I tried diff, but couldn't get it right. There are two files: file1: apple mango strawberry banana grape file2: grape apple banana I need an output file like below: ... (11 Replies)
Discussion started by: kisaad
11 Replies

9. Emergency UNIX and Linux Support

to find difference between two files

I have a file which gets appended with records daily..for eg. 1st day of the month i get 9 records ,2nd day 9 records .....till the last day in the month...the no of records may vary...i store the previous days file in a variable oldfile=PATH/previousdaysfile....i store the current days file in a... (6 Replies)
Discussion started by: ganesh_248
6 Replies

10. UNIX for Dummies Questions & Answers

Difference between locate and find

I was wondering what the difference was between the two commands, I understand that locate won't search for files with certain permissions set. Are there any others? Thanks (1 Reply)
Discussion started by: camerja1
1 Replies
Login or Register to Ask a Question