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

Mik*_* T. 4 ls sftp symlink

我们的托管服务提供商不允许ssh-access(因为安全),但允许我们通过sftp. (唯一的其他选择是通过“cpanel”)。

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

sftp> symlink 500 rwu
sftp> ls -l
lrwxrwxrwx    1 foo bar  3 May 22 16:27 rwu
Run Code Online (Sandbox Code Playgroud)

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

Gil*_*il' 6

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

#ifdef notyet
char *
do_readlink(struct sftp_conn *conn, const char *path)
{
    …
}
#endif
Run Code Online (Sandbox Code Playgroud)

这是SSH_FXP_READLINKOpenSSH 源代码中唯一出现的。我不知道为什么这会被注释掉,或者需要什么才能使它工作。我可以在 OpenSSH 邮件列表中找到的唯一相关消息是2002年未采用的补丁

因此,您唯一的选择是使用不同的 SFTP 客户端,例如SSHFScurl