如何使用 sftp 列出符号链接?

如何使用 sftp 列出符号链接?

我们的托管提供商不允许ssh-access (因为安全),但允许我们通过 .access 上传文件和操作目录sftp。 (唯一的其他选择是通过“cpanel”)。

sftp足以允许创造符号链接,但还不足以正确列出它们。例如:

sftp> symlink 500 rwu
sftp> ls -l
lrwxrwxrwx    1 foo bar  3 May 22 16:27 rwu

也就是说,我可以看到事实rwu”是一个符号链接,但我看不到什么。至少,默认情况下不是。整个sftp-client 或其ls-命令是否有一些“隐藏”选项,可以正确列出符号链接 - 就像真正的那样ls(1)

答案1

OpenSSH SFTP 客户端目前不支持此功能。

#ifdef notyet
char *
do_readlink(struct sftp_conn *conn, const char *path)
{
}
#endif

SSH_FXP_READLINK这是OpenSSH 源代码中唯一出现的情况。我不知道为什么这会被注释掉,也不知道需要什么才能使其发挥作用。我在 OpenSSH 邮件列表上找到的唯一相关消息是2002年的补丁那没有被采纳。

所以你唯一的选择是使用不同的 SFTP 客户端,例如SSHFS或者卷曲

相关内容