Dotaz zacatecnika

Jiri Kouba jiri.kouba na volny.cz
Středa Říjen 31 06:32:36 CET 2001


Dne út 30. říjen 2001 15:12 jste napsal(a)
>Nejprve bych se chtel zeptat, co je spatne na nasledujicim zapisu prikazu
>rm?:

> rm -R -f /var/www/html/~*.*

Chcete rekurzivně hledat a mazat to, co vyhovuje podmínce a je tedy nalezeno. 
Parametr -R nařizuje rekurzi pro mazání, ale ne pro hledání, to ani nemůže 
zařídit, protože hledání souborů s tildou  n začátku jste svěřil shellu a ten 
provede expanzi wildcard znaků * tam, kam ukazujete, tedy pod .
/var/www/html/
v první úrovni stromu a mod rekurze od příkazu, který je po ním spuštěn a 
běží jako jeho dítě,  nepřebírá. O tom se můžete přesvědčit:
cd /
pushd /var/www/html/
Založte soubor s tildou na subkořeni:
touch ~a.b
ls -l ~*
popd
rm -R -f /var//www/html/~*.*
ls -l /var/www/html/~*
Soubor ~a.b zmizel, ostatní v podadresářích ne.
Jedna z možností je rozdělit úkol na  příkazy, které spolupracují:
find /var/www/html -name "~*.*" -type f -exec rm -f {} \;    

-- 
******************** Jiri Kouba *************************************
J.A.K. a Unitas fratrum, Linux, Apache a Nnee (jeho predchudci) , ...
                     CAD/CAM Pro/ENGINEER (TM)
*********************************************************************



Další informace o konferenci Linux