Tohle by mělo fungovat správně
find . -type f -exec test -r {} \; -print
Popřípadě místo -print
použít -ls
pro ověření (výpisem).
-exec
je akce, jejíž hdnota (true / false) závisí na návratovém kódu vykonaného příkazu. Tím, že je to ale akce, přepíše implicitní print, který přiřadím na konec. Všechny predikáty jsou spojené logickým součinem. -print
se tedy vykoná pouze při úspěšném vyhodnocení příkazu. Využívám tedy externí příkaz pro testování něčeho, co find testovat neumí.
-type f
není nutný. Jen si omezuji na obyčejné soubory.
Otestováno na debianu (tam funguje i -exec [ -r {} ]
).
Na fray otestováno jen zběžně, nemůžu si tam vytvořit příjemné podmínky na testování (chown
...), ale passwd najde, zatímco shadow ne.
2 | No.2 Revision |
Tohle by mělo fungovat správně
find . -type f -exec test
-r -x {} \; -print
Popřípadě místo -print
použít -ls
pro ověření (výpisem).
-exec
je akce, jejíž hdnota (true / false) závisí na návratovém kódu vykonaného příkazu. Tím, že je to ale akce, přepíše implicitní print, který přiřadím na konec. Všechny predikáty jsou spojené logickým součinem. -print
se tedy vykoná pouze při úspěšném vyhodnocení příkazu. Využívám tedy externí příkaz pro testování něčeho, co find testovat neumí.
-type f
není nutný. Jen si omezuji na obyčejné soubory.
Otestováno na debianu (tam funguje i -exec [
).-r -x {} ]
Na fray otestováno jen zběžně, nemůžu si tam vytvořit příjemné podmínky na testování (chown
...), ale passwd najde, zatímco shadow ne.
EDIT: Sorry, v podmínce jsem měl -r
. Samozřejmě má být -x
.
3 | No.3 Revision |
Tohle by mělo fungovat správně
find . -type f -exec test -x {} \; -print
Popřípadě místo -print
použít -ls
pro ověření (výpisem).
-exec
je akce, jejíž hdnota (true / false) závisí na návratovém kódu vykonaného příkazu. Tím, že je to ale akce, přepíše implicitní print, který přiřadím na konec. Všechny predikáty jsou spojené logickým součinem. -print
se tedy vykoná pouze při úspěšném vyhodnocení příkazu. Využívám tedy externí příkaz pro testování něčeho, co find testovat neumí.
-type f
není nutný. Jen si omezuji na obyčejné soubory.
Otestováno na debianu (tam funguje i -exec [ -x {} ]
).
Na fray otestováno jen zběžně, nemůžu si tam vytvořit příjemné podmínky na testování (chown
...), ale passwd najde, zatímco shadow ne.ne (v případě testu na čitelnost).
EDIT: Sorry, v podmínce jsem měl -r
. Samozřejmě má být -x
.