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.
Copyright students of FIT CTU and others, 2014. Content on this site is licensed under a Creative Commons Attribution-ShareAlike 4.0 International license.