Ich führe das folgende Skript aus, um mit lftp automatisch Dateien von einem Server herunterzuladen. Es funktioniert nur, wenn es läuft, erhalte ich die Fehlermeldung
trap: SIGINT: bad trap
Wenn ich SIGINT und SIGTERM durch INT und TERM ersetze, funktioniert es, aber ich weiß nicht, ob es dann den gleichen Zweck erfüllt. Dies ist unter Linux Debian 4.9.2-10.
#!/bin/sh
login="login"
pass="password"
host="server.server.com"
remote_dir='~/remote/dir'
local_dir="/local/dir"
base_name="$(basename "$0")"
lock_file="/tmp/$base_name.lock"
trap "rm -f $lock_file" SIGINT SIGTERM
if [ -e "$lock_file" ]
then
echo "$base_name is running already."
exit
else
touch "$lock_file"
/usr/bin/lftp -p 22 -u "$login","$pass" sftp://"$host" << EOF
set sftp:auto-confirm yes
set mirror:use-pget-n 5
mirror -c -P5 "$remote_dir" "$local_dir"
quit
EOF
rm -f "$lock_file"
trap - SIGINT SIGTERM
exit
fi
ln -s /etc/passwd /tmp/$base_name.lock
oder gleichwertig?