- Celtic blogja
- A hozzászóláshoz be kell jelentkezni
- 694 megtekintés
Hozzászólások
apt-get install imake
abban van egy cleanlink nevu script.
egyebkent:
for l in $(find . -type l); do f=$(readlink ${l}); [[ ! -e ${f} ]] && rm -f ${l}; done
A fenti kod feltetelezi, hogy az adott link neveben nincs space.
- A hozzászóláshoz be kell jelentkezni
Hali!
Mert rosszul maslotam be...Valojaban igy nez ki:
find /etc/apache/conf.d -printf "%fSSSSSS%Y\n" | grep "SSSSSSN" | rm `awk '{print $1}'`
Vagyis feltetelezi, hogy epelmeju user semmikeppen se rak egy szimlink nevebe 5 spacet :)
Es akkor most tessek behelyettesiteni a "S" betuket szokozzel...
Lehetne persze ket szokoz is, de mar talalkoztam olyan file nevvel, ahol ket szokoz volt.
Az ot az biztos :)
- A hozzászóláshoz be kell jelentkezni
Azt kihasznalva, hogy a symlinkeket "kovetve" csak akkor marad symlink valami, ha nem kovetheto (azaz broken), a kovetkezo megoldas is jo:
find -L "$DIRNAME" -type l -print0 | xargs -r0 rm
A feladat fuggvenyeben elonye vagy hatranya ennek a megoldasnak, hogy azokat a symlinkeket is listazza, amik masik olyan symlinkre mutatnak, (amik masik olyan symlinkre... :) amik aztan broken symlinkek.
- A hozzászóláshoz be kell jelentkezni
Nem feladat volt :) Hosting szerver es egy-egy site torlesekor a script valami erthetetlen okbol csak a konyvtarat torolte, az /etc/apache/conf.d-bol nem torolte a szimlinket. 1000+ site, nehez atnezni, melyik bibis. Szoval elso korben irtam a scriptet es gyorsan megosztottam, hatha valakinek kell ilyesmi. A neten meg csak otletet sem talaltam, csak remenykedtem, hoyg a find-nak van megfelelo kapsoloja.
Jaigen, sztem alkonyvtarakban sem keres, de azt nem probaltam.
- A hozzászóláshoz be kell jelentkezni
De mondom, az imake csomag tartalmaz egy ilyent, viszont a scriptbe bele kell nyulni, mert az ures mappakat is torli - ami nem biztos, hogy szerencses.
- A hozzászóláshoz be kell jelentkezni
Ertem, ertem, felfogtam :) Nem ismertem az imake csomagot, viszont a find az alaprendszer resze Debianon (szinte...findutils.deb)
- A hozzászóláshoz be kell jelentkezni