[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: shell-scripting



Hallo Andreas!

Andreas Grassl schrieb am Dienstag, den 10. Oktober 2006:

> im prinzip muss ich nur files mit falschen permissions aussortieren, die
> noch von windows-partitionen stammen, d.h. sie sind alle 700, sollten
> aber je nach typ 755 oder 644 sein.
> 
> 
> $ chmod 755 $(find -type d)

Falls Du wirklich nur Verzeichnisse ändern willst:

find . -type d -perm 700 -exec chmod 755 {} \;

oder auch ab etch

find . -type d -perm 700 -exec chmod 755 {} +

> 
> endet in folgender ausgabe:
> 
> bash: /bin/chmod: Argument list too long

Das passiert, wenn zuviele Argumente übergeben werden. Mittels xargs
oder find kommt man darum. Die maximale Anzahl an Argumenten nennt
Dir: 
getconf ARG_MAX

Soweit ich weiß, kann man das aber nur ändern, indem man einen neuen
Kernel kompiliert

> zweite frage: wie kann ich leerzeichen in dateinamen verarbeiten mit
> dieser methode?

Stichwort Quoting innerhalb der Shell (siehe auch: 
man bash |less -p "^QUOTING"), meistens reicht es, wenn man "" um die
Argumente macht.

> PS: system ist ein UbuntuDapper, dürfte aber hoffentlich egal sein :-)

Ob bei Dapper find "-exec +" funktioniert weiß ich nicht. Es wird
wahrscheinlich funktionieren, wenn findutils neuer als Anfang 2005 ist.


Grüße,
Christian
-- 
hundred-and-one symptoms of being an internet addict:
11. You find yourself typing "com" after every period when using a word
    processor.com



Reply to: