Alternativa programu relink
Martin `MJ' Mares
mj na ucw.cz
Středa Červen 16 17:09:44 CEST 2004
> Pouzivate neco podobneho, vite o necem podobnem ? Sverte se prosim, i
> soukrome ...
:-) Ja pouzivam uz peknych par let svou zcela primitivni utilitku sync-opt,
ktera pro packages v /opt/<package> generuje symlinky do /opt/{bin,sbin,lib,man,include}.
Martin
#!/bin/sh
# This is /opt syncer as written by Martin Mares <mj na ucw.cz>
OPT=/opt
DO=
DIRS="bin sbin lib man include"
[ "$1" = -s ] && DO="echo #"
function add_pkgs
{
local D="$1"
local F=0
local T X
for T in $DIRS ; do
if [ -d $D$T -a -n "$D" ] ; then
[ $F = 0 ] && echo "Adding $D..."
for X in `find $D$T -not -type d` ; do
R=`echo $X | sed "s@^$D@@"`
RD=`echo $R | sed 's@\([^/]\+\)$@@'`
B=`echo $R | sed "s@[^/]\+/@../@g;s@/\\([^/]\\+\\)\\$@/$X@"`
[ -d $RD ] || $DO mkdir -p $RD
$DO ln -s $B $R
done
F=1
fi
done
if [ $F = 0 ] ; then
for T in $D* ; do
[ -d $T ] && add_pkgs $T/
done
fi
}
cd $OPT
$DO rm -rf $DIRS
$DO mkdir -p $DIRS
add_pkgs ""
echo "Running ldconfig"
$DO ldconfig
Další informace o konferenci Linux