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: