Note: Due to technical difficulties, the Archives are currently not up to date.
GMANE provides an alternative service for most mailing lists. c.f. bug 424647
List Archive: gentoo-user-el
δεν είμαι σίγουρος τι θες να κάνεις, αλλά αν πχ ψάχνεις όλα <div>τα broken symlinks τότε το ευκολότερο που μπορείς να κάνεις</div><div>είναι:</div><div><br></div><div> $ find /where/to/check -follow -type l 2>/dev/null</div>
<div><br></div><div>που θα επιστρέψει τα σπασμένα symlinks μόνο,</div><div>αφού τα σωστά θα τα "ακολουθήσει". </div><div>επίσης δε είμαι σίγουρος τι εννοείς για τους καταλόγους.</div><div>δεν αλλάζει κάτι αν το symlink δείχνει σε αρχεία ή φακέλους. </div>
<div><br></div><div><br><div class="gmail_quote">2012/2/17 Theo Chatzimichos <span dir="ltr"><<a href="mailto:tampakrap@g.o">tampakrap@g.o</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5">On Thursday 16 of February 2012 23:52:01 Alex-P. Natsios wrote:<br>
> 2012/2/16 Theo Chatzimichos <<a href="mailto:tampakrap@g.o">tampakrap@g.o</a>>:<br>
> > Καλησπέρα,<br>
> ><br>
> > μήπως γνωρίζει κανείς κανένα τρόπο (σε bash,python,perl ή ruby) να ελέγχω<br>
> > αν ένα symlink είναι valid? Για καταλόγους μπορώ να τους ακολουθώ και να<br>
> > παίρνω το exit code μετά, για αρχεία όμως?<br>
><br>
> θοδωρή αυτό που ζητάς και γίνετε.. και δεν γίνετε.. και είναι και<br>
> σχετικά περίεργο ανάλογα την πλατφόρμα.<br>
> για links και για τις περισσότερες πλατφόρμες (κυρίως unixοειδή )<br>
> υπάρχει το readlink.<br>
><br>
> Πρόβλημα:<br>
> δεν ακολουθεί δυστυχώς chain links.<br>
> θα σου δώσει όμως το αρχείο στο οποιο κάνει point το link<br>
><br>
> αν έχουμε ας πούμε το symlink ( testlink -> testfile )<br>
> το File.readlink("testlink") θα σου επιστρέψει testfile.<br>
><br>
><br>
> ΥΓ. τα παραπάνω ισχύουν για Ruby και Ruby on Rails.<br>
<br>
</div></div>Thanks. Some dirty solutions by irc brainstorming:<br>
<br>
Python:<br>
<br>
if not os.path.islink('/path/to/symlink'):<br>
print "not a symlink"<br>
else:<br>
try:<br>
os.stat('/path/to/symlink')<br>
except OSError:<br>
print "symlink is broken"<br>
<br>
Bash:<br>
<br>
SYMLINK="/path/to/symlink"<br>
# Check for valid target file<br>
[[ -L $SYMLINK ]] && \<br>
cat $SYMLINK > /dev/null 2>&1 && \<br>
VALID=1<br>
# Check for valid target dir<br>
[[ -n VALID ]] || \<br>
[[ -L $SYMLINK ]] && \<br>
pushd $SYMLINK > /dev/null 2>&1 && \<br>
VALID=1<br>
popd > /dev/null 2>&1<br>
<div class="HOEnZb"><div class="h5">--<br>
Theo Chatzimichos (tampakrap) | <a href="http://blog.tampakrap.gr" target="_blank">blog.tampakrap.gr</a><br>
Gentoo KDE/Qt, Planet, Overlays</div></div></blockquote></div><br></div>
|
|