如何使用R语言curl包删除SFTP服务器文件?已尝试方法未生效
解决R语言curl包删除SFTP文件失败的问题
你遇到的问题根源在于错误使用了customrequest参数,该参数仅适用于HTTP协议的自定义请求方法,无法处理SFTP协议的文件操作命令。命令行curl的-Q参数对应的是libcurl的CURLOPT_QUOTE选项,在R的curl包中需要通过quote参数来配置。
正确代码示例
curl::curl_fetch_memory( url = "sftp://username:password@server-ip-address", handle = curl::new_handle() |> curl::handle_setopt( verbose = TRUE, quote = list("rm files/my_file.txt") ) )
关键说明
quote参数接收一个命令列表(即使单条命令也要用list()包裹),libcurl会在建立SFTP连接后执行列表中的命令,这和命令行curl的-Q参数逻辑完全一致。- 不要使用
customrequest处理SFTP操作,它只对HTTP/HTTPS请求有效。
内容的提问来源于stack exchange,提问作者Lefkios Paikousis
相关产品推荐
相关产品推荐

