ein simples bash problemchen

Antworten
Nachricht
Autor
marcdevil

ein simples bash problemchen

#1 Beitrag von marcdevil » 07. Apr 2001 0:09

bash-2.04# find ./ -type f -exec chmod 600 {};<!--no-->
find: missing argument to `-exec'
bash-2.04#

was mach ich falsch?

marcdevil

Re: ein simples bash problemchen

#2 Beitrag von marcdevil » 07. Apr 2001 0:39

find ./ * -type f -exec chmod 600 \{\} ;<!--no-->

tja die \<!--no-->\ haben gefehlt

andib
Beiträge: 277
Registriert: 20. Jun 2000 14:18
Wohnort: Dortmund

Re: ein simples bash problemchen

#3 Beitrag von andib » 07. Apr 2001 4:06

Funktioniert hier nicht. Aber dafür
find ./ -type f -exec chmod 600 {} ;<!--no-->

CU
Andi

andib
Beiträge: 277
Registriert: 20. Jun 2000 14:18
Wohnort: Dortmund

Re: ein simples bash problemchen

#4 Beitrag von andib » 07. Apr 2001 4:07

Sorry, sollte
find ./ -type f -exec chmod 600 {} \<!--no-->;
heissen. verflixtes Ultraboard...

CU
Andi

bakunin
Beiträge: 597
Registriert: 16. Aug 1999 6:44
Wohnort: Lorsch (Südhessen)
Kontaktdaten:

Re: ein simples bash problemchen

#5 Beitrag von bakunin » 07. Apr 2001 12:07

Hi!

Also für solche simplen Sachen verwende ich lieber xargs:

find -type f | xargs chmod 600

Cheers,
Wolfgang

marcdevil

Re: ein simples bash problemchen

#6 Beitrag von marcdevil » 07. Apr 2001 18:27

da das hier nich so recht angezeigt wird:
find ./ -type f -exec 600 {} SPACE BACKSLASH SEMIKOLON ! ich hatte das SPACE vergessen.

Jochen

Re: ein simples bash problemchen

#7 Beitrag von Jochen » 07. Apr 2001 21:35

Kleine Anmerkung am Rande: Hört auf Wolfgang! <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">

Bei gegebenen 100 Dateien wird bei der -exec - Lösung 101 Prozesse aufgesetzt und niedergerissen: 1 find und 100 chmods. Bei der xargs-Lösung dagegen nur drei: 1 find, 1 xargs und ein chmod.

Und jetzt das ganze noch mal mit tausend Dateien vorstellen? Oder 10000? (Da werden es vielleicht ein paar mehr chmods, auch in der xargs-Lösung, aber um *Klassen* weniger als in der -exec-Lösung!)

Antworten