[+] Z

Potrzebujesz pomocy z C, C++, perl, python, itp.
starach
Beginner
Posty: 134
Rejestracja: 08 grudnia 2010, 15:53

[+] Zła wartość zmiennej w skrypcie

Post autor: starach »

Kod: Zaznacz cały

#!/bin/sh

### BEGIN INIT INFO
# Provides:		ventrilo
# Required-Start:	
# Required-Stop:	
# Default-Start:	2 3 4 5
# Default-Stop:		
# Short-Description:	Ventrilo voice comunication server
### END INIT INFO
set -x

VENPATH=/home/ownator
VENBIN=$VENPATH/ventrilo_srv

case "$1" in
  start)
	if [ ! -f $VENTBIN.pid ]
	then
	  su ventrilo -c "$VENBIN -f$VENPATH/ventrilo_srv/3784 -d"
	  renice -5 `cat $VENPATH/ventrilo_srv.pid`
	else
	  echo "[VT] Ventrilo server already running."
	fi
	;;
  stop)
	if [ ! -f $VENTBIN.pid ]
	then
	  echo "[VT] Ventrilo server isn't running."
	else
	  echo "[INFO] Stopping Ventrilo server."
	  kill `cat $VENTBIN.pid`
	fi
	;;
  status)
	if [ ! -f $VENTBIN.pid ]
	then
	  echo "[VT] Ventrilo server isn't running."
	else
	  cat $VENTBIN.pid
	fi
	;;
  *)
	echo "Usage: /etc/init.d/ventrilo.sh {start|stop|status}"
	exit 1
esac

exit 0
Mam problem z ustawieniem zmiennych

Kod: Zaznacz cały

VENPATH=/home/ownator
VENBIN=$VENPATH/ventrilo_srv
Przy próbie wyświetlenia ich za pomocą

Kod: Zaznacz cały

echo $VENTPATH
Nie otrzymuję wartości zmiennej. Wyświetla się tylko pusta linia. W konstrukcjach warunkowych jest to o tyle problemem, że skrypt nie może ustalić czy plik istnieje

Kod: Zaznacz cały

if [ ! -f $VENTBIN.pid ]
	then
Dla niego wartość po -f wynosi .pid
Awatar użytkownika
lessmian2
Member
Posty: 1088
Rejestracja: 30 kwietnia 2008, 19:38
Lokalizacja: Kraków

Post autor: lessmian2 »

Chyba było dość późno jak to pisałeś ;)

Kod: Zaznacz cały

VENBIN=$VENPATH/ventrilo_srv
i

Kod: Zaznacz cały

if [ ! -f $VENTBIN.pid ]
starach
Beginner
Posty: 134
Rejestracja: 08 grudnia 2010, 15:53

Post autor: starach »

lessmain2, nie, ja po prostu idiotą jestem od urodzenia.
Dziękuję.
Awatar użytkownika
Bastian
Member
Posty: 1424
Rejestracja: 30 marca 2008, 16:09
Lokalizacja: Poznañ

Post autor: Bastian »

A moze tak:

Kod: Zaznacz cały

VENPATH="/home/ownator"
VENBIN="${VENPATH}/ventrilo_srv"



Kod: Zaznacz cały


VENBIN="${VENPATH}/ventrilo_srv"

Kod: Zaznacz cały

if [ ! -f ${VENBIN}.pid ]
ODPOWIEDZ