ich habe mal eine Frage zu einem Bash-Skript.
Verstehe nicht, warum es nicht funktioniert, sobald ich nur einen Variable deklariere.
DAs folgende Skript funktioniert so nicht:
Code: Alles auswählen
1 if [ -n "$1" ]
2 then
3 SERVER="$1"
4 else
5 echo "Error: Usage $0 <fqdn-hostname> [<ssh-port>]"
6 exit
7 fi
8 if [ $# -eq 2 ]
9 then
10 SSHPORT=$2
11 else
12 SSHPORT=22
13 fi
14 DATA_PATH="/home/daniel/server/backup"
15 PATH="etc"
16 /usr/bin/rsync -avz --numeric-ids -e "ssh -p $SSHPORT" --delete --delete-excluded $SERVER:/etc $DATA_PATH
Code: Alles auswählen
daniel@daniel-laptop:~/server/scripts$ ./backup-test.sh remote-server 222
rsync: Failed to exec ssh: No such file or directory (2)
rsync error: error in IPC code (code 14) at pipe.c(84) [receiver=3.0.3]
rsync: writefd_unbuffered failed to write 4 bytes [receiver]: Broken pipe (32)
rsync error: error in IPC code (code 14) at io.c(1544) [receiver=3.0.3]
Dabei verwende ich die Variable doch noch nichtmal ($PATH). Verstehe nicht, warum sich das Skript dann nicht mehr ausfürhen lässt.