尝试捕获SIGINT信号时为什么会出现错误消息?
我正在运行以下脚本,以使用lftp从服务器自动下载文件。它正常工作,但运行时会收到错误消息 trap: SIGINT: bad trap 如果我用INT和TERM替换SIGINT和SIGTERM,那么它确实可以工作,但是我不知道它是否能达到相同的目的。这是在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 …