Portál AbcLinuxu, 29. prosince 2025 13:39
cd ../../java-libs/
lib_dir=`pwd`
if [ -z "${CLASSPATH}" ] ; then
CLASSPATH="${lib_dir}/${1}"
else
CLASSPATH="${CLASSPATH}:${lib_dir}/${1}"
fi
export CLASSPATH
[...]
Ak je to bash nie sh, mohla by ist namiesto lib_dir pouzit premenna ${PWD} (tusim).
Druha cast problemu je, ze to chces urobit tak, aby sa po spusteni "funkcie" (skriptu?) zmena premennej CLASSPATH prejavila aj vo volajucom shelli.
Pro získání úplné cesty používám tenhle skript.
#!/bin/bash FILENAME="../../java-libs/knihovna.jar" PATHNAME="$(readlink -f "$FILENAME")"
#!/bin/bash
function addCP
{
PATHNAME_TMP="$(readlink -f "$1")"
if [ -z "$PATHNAME_TMP" ]; then
echo "addCP: soubor $1 neexistuje"
else
if [ -z "${CLASSPATH}" ] ; then
CLASSPATH="$(readlink -f "$1")"
else
CLASSPATH="${CLASSPATH}:$(readlink -f "$1")"
fi
fi
}
addCP "../../java-libs/knihovna.jar"
addCP "../knihovna2.jar"
Pokud chcete funkci "addCP" používat z interaktivního shellu, zavolejte tenhle skript s tečkou před jménem:
. ./jmeno_skriptuPřeju příjemnou zábavu
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.