| Server IP : 193.86.120.172 / Your IP : 216.73.216.67 Web Server : Apache/2.4.63 (Unix) System : Linux JServices 3.10.108 #86003 SMP Wed Oct 22 13:20:46 CST 2025 x86_64 User : kubec ( 1026) PHP Version : 8.2.28 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/packages/Perl/scripts/ |
Upload File : |
#!/bin/sh
# Copyright (C) 2000-2016 Synology Inc. All rights reserved.
CHECK_AND_LINK_FILE()
{
local LINK=$1
local LINK_TARGET=$(realpath /var/packages/Perl/target/$LINK)
local LINK_BASE=$(dirname $LINK)
if [ ! -d "$LINK_BASE" ]; then
mkdir -p $LINK_BASE
fi
if [ -e "$LINK" ]; then
rm -rf $LINK
fi
if [ ! -e "$LINK" ]; then
ln -sf $LINK_TARGET $LINK
fi
}
CHECK_AND_REMOVE()
{
[ -L $1 ] && rm $1
}
CHECK_LINK_TARGET()
{
LINK=$1
LINK_TARGET_REAL=$(readlink $LINK)
LINK_TARGET=$(realpath /var/packages/Perl/target/$LINK)
if [ -z "$LINK_TARGET_REAL" ]; then
return 1
fi
if [ "$LINK_TARGET_REAL" != "$LINK_TARGET" ]; then
return 1
fi
return 0
}
EACH()
{
for file in $(cd /var/packages/Perl/target/ && find "$2" -mindepth 1 -maxdepth 1); do
$1 /$file || return $?
done
}
ALL()
{
EACH $1 "usr/local/bin" || return $?
EACH $1 "usr/local/sbin" || return $?
EACH $1 "usr/local/share" || return $?
EACH $1 "usr/local/lib" || return $?
EACH $1 "usr/bin" || return $?
EACH $1 "usr/lib" || return $?
}
DO_LINK()
{
ALL CHECK_AND_LINK_FILE
}
DO_REMOVE()
{
ALL CHECK_AND_REMOVE
}
CHECK_LINK()
{
ALL CHECK_LINK_TARGET
}