Sida 1 av 1

[Löst] Skript för att göra filer ej exekverbara

Postat: 10 apr 2010, 17:16
av perab
Hej!
Den här gången är det inte frågan om något problem, utan snarare om en finess. Min fråga är, om någon därute har ett bash-skript för att plocka bort x-attributet från filer i aktuell katalog och alla dess underkataloger. Det går ju inte att bara köra kommandot chmod -x rekursivt rakt av. Ty då blir ju även katalogerna icke körbara, vilket som bekant medför att man inte kan gå ner i dessa. Någon som har ett tjusigt bash-skript?

Situationen kan uppkomma om man tar igen en backup (av dokument) som gjorts på en NTFS-disk. Skriptet skulle spara en hel del arbete.

Per

Re: Skript för att göra filer ej exekverbara

Postat: 10 apr 2010, 17:28
av Lars
Det görs enkelt med find. Ett skript skulle kunna se ut så här:

Kod: Markera allt

#!/bin/sh

find $1 -type f -exec chmod -x \{\} \;
Anropa med skriptnamn <katalognamn>

Re: Skript för att göra filer ej exekverbara

Postat: 10 apr 2010, 17:53
av mcNisse
eller

Kod: Markera allt

find . -type f -print0 | xargs -0 chmod -x

Re: Skript för att göra filer ej exekverbara

Postat: 10 apr 2010, 18:22
av perab
Tjusigt!
Tack till Lars, och tack till mcNisse - igen. Det här besparar mig mycket jobb nu när jag håller på att installera upp en ny dator och tar igen alla backuper från USB-hårddisken (NTFS).