使用 ssh 时出现错误 EOF:找不到命令

Pra*_*asu 3 unix ssh bash scp sh

我正在尝试重命名远程服务器中的文件名,例如 filename-dirname.suffix 并将文件复制到我的服务器。我写过这样的代码......

  #!/usr/bin/bash
  TRANSFERSERVERXMLS="/emp/transfer/XMLS"
  REMOTESERVERXMLS="remoteemp/empdir/XMLS"

  # renaming the filenames in remote server like filename-dirname.suffix  
  ssh abc@xyz REMOTESERVERXMLS=$REMOTESERVERXMLS 'bash -s'<< 'EOF'

  for i in $REMOTESERVERXMLS/* ; do 
     if [[ -d $i ]]; then
            dirname=$(basename $i)
                     for j in $REMOTESERVERXMLS/$dirname/* ; do

                               fname="$(basename "$j")"

                               prefix=$(echo $fname | awk -F "." 'NF{NF-=1};1')
                               suffix=$(echo $fname | awk -F "." '{print $NF}')

                               target=$prefix-$dirname.$suffix

                                mv $REMOTESERVERXMLS/$dirname/"$fname" $REMOTESERVERXMLS/$dirname/"${target// /_}"
                          done
    fi
  done
  EOF
 scp abc@xyz:${REMOTESERVERXMLS}/*/* ${TRANSFERSERVERXMLS}
Run Code Online (Sandbox Code Playgroud)

收到错误:EOF:找不到命令并且 scp 无法工作(无法复制到调用服务器中)

cda*_*rke 7

分隔符之前有一个空格EOF。不要EOF在“此处文档”的末尾缩进。分隔符 ( EOF) 必须是该行中唯一的字符,前导或尾随没有空格。

或者使用<<- 'EOF'制表符并缩进。