使用“scp”时“无法打开显示”

使用“scp”时“无法打开显示”

当我在命令提示符中输入时,我收到消息scp file1 [email protected]:file2

Can't open display
Can't open display
Can't open display
Can't open display
Can't open display
file1                          100%  589KB 589.0KB/s  00:00

然后我等待大约 10 秒钟,然后scp返回命令行。这不会发生在 时ssh,只会发生在 时scp。我使用的是 Fedora 18。

答案1

您的配置文件脚本可能有一些命令需要与终端仿真。在非交互式scp会话中执行时它们会失败。

例如,如果您使用的是 bash,此类命令应从.bashrcscript移至.bash_profile.

TERM或者使用PS1环境变量或类似的技巧来跳过非交互式会话的这些命令。

# If running interactively, then:
if [ "$PS1" ]; then

#### Alex's funky commands might go here                          <------
    /usr/bin/ssh-agent &

    # If this is an xterm set the title to user@host:dir
    case $TERM in
    xterm*)
        PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
#### Alex's funky commands might also go here if they apply to xterm sessions  <------
        ;;
    *)
        ;;
    esac

fi

scp如果您用于复制文件,这不会评估,但如果您启动交互式会话,则会评估。

(示例代码由@克里吉

相关内容