Seu servidor SFTP está configurado para executar chroot na pasta "data".
Provavelmente não há nada que você possa fazer no lado do psftp para sair da pasta "data".
Você precisa alterar a configuração do servidor SFTP.
Estou testando a transferência de arquivos SFTP entre servidores no Windows. Eu estou usando psftp.exe como um cliente SFTP e RebexTinySftpServer como servidor SFTP. Eu sou capaz de se conectar ao servidor Rebex e usar get and put para transferir arquivos de e para ele, mas todos os arquivos que eu enviar para o servidor automaticamente vai para uma pasta dentro da pasta do servidor Rebex chamada "dados". Eu quero mudar o diretório de trabalho remoto para algum outro caminho fora do caminho em que o servidor Rebex é extraído. Eu tentei usar o comando CD para alterar o caminho remoto, mas só pode mudar para sub-pastas dentro da pasta de dados do servidor Rebex. Quando tento os seguintes comandos:
cd /D:/SFTP_Test
cd /D/SFTP_Test
cd /SFTP_Test
cd \D:\SFTP_Test
cd D:\SFTP_Test
Eu recebo a mensagem "nenhum arquivo ou diretório". O que posso fazer se eu quiser alterar o diretório remoto para "D: \ SFTP_Test". Meu servidor Rebex é extraído no local "D: \ SFTP \ RebexTinySftpServerBin-1.0.5"
Editar: Eu encontrei a solução para o meu problema com a ajuda do post do @Martin Prikryl. Eu abri o arquivo de configuração para o servidor Rebex (D: \ SFTP \ RebexTinySftpServerBin-1.0.5 \ RebexTinySftpServer.exe.Config) e alterei o valor da seguinte linha:
<add key="userRootDir" value="data"/>
Para
<add key="userRootDir" value="D:\"/>
e agora posso fazer o cd para qualquer caminho dentro da minha unidade D usando o comando cd /SFTP_Test