curl命令在Mac和Windows上的行为有所不同

用户名

我有一些可以在Mac上运行的R代码,但是其他人正在尝试在Windows上运行它,但似乎不起作用。我一直在使用的代码是:

for(i in 1:length(SNPs.needproxies)){
       print(i)
       system(paste0("curl -k -X GET 'https://ldlink.nci.nih.gov/LDlinkRest/ldproxy?var=",SNPs.needproxies[i],"&pop=MXL&r2_d=r2&token=",token,"' > ", dir,"out.",SNPs.needproxies[i],".txt"))
}

如果我尝试在Windows上运行此程序,则会收到错误消息

不支持或禁用https”。

我们缩小了问题的范围,因为似乎地址中的单引号应替换为双引号。但是,由于这是paste0()函数内的功能,因此它认为还有其他内容,因此我们认为使用反斜杠将双引号转义,即,\"https://ldlink.nci.nih.gov/LDlinkRest/ldproxy?var=",SNPs.needproxies[i],"&pop=MXL&r2_d=r2&token=",token,"\"

这种工作方式是提供所需的输出,但应该将其打印到名为dir / out.file.txt之类的文件中,但不会执行此部分。

SNPs.needproxies是:

SNPs.needproxies <- c("rs709692","rs9659182","rs13064990","rs11130017","rs9832922" ,"rs36120363","rs4727815","rs7994762","rs72772387")

我有该网站的令牌,但无法共享该令牌,但它存储在称为令牌的对象中。

疯子

1.带有curl -o选项的system()

注意到Windows上的curl要求将https地址括在双引号(而不是单引号)中之后,我将完全避免其余的管道问题-o,如果您坚持编写,则可以使用curl中选项指定要写入结果的文件发出命令:

system(paste0("curl -k -X GET \"https://ldlink.nci.nih.gov/LDlinkRest/ldproxy?var=", SNPs.needproxies[i], "&pop=MXL&r2_d=r2&token=", token, "\" -o out.", SNPs.needproxies[i], ".txt"))

2. curl_download()

另外,R有一些基于curl的软件包,这些软件包可以处理所有这些细节,例如curl

library(curl)
url <- sprintf("https://ldlink.nci.nih.gov/LDlinkRest/ldproxy?var=%s&pop=MXL&r2_d=r2&token=%s", SNPs.needproxies[i], token)
curl_download(url, sprintf("out.%s.txt", SNPs.needproxies[i]))

3. file.download()

您也可以file.download()按照Konrad的建议在这种情况下使用

url <- sprintf("https://ldlink.nci.nih.gov/LDlinkRest/ldproxy?var=%s&pop=MXL&r2_d=r2&token=%s", SNPs.needproxies[i], token)
download.file(url, sprintf("out.%s.txt", SNPs.needproxies[i]))

4. GET()

您也可以GET()httr库中使用:

library(httr)
u <- "https://ldlink.nci.nih.gov/LDlinkRest/ldproxy"
q <- list(var = SNPs.needproxies[i],
          pop = "MXL",
          r2_d = "r2",
          token = token)
f <- sprintf("out.%s.txt", SNPs.needproxies[i])
GET(url = u, query = q, write_disk(f))

5. LDproxy()

注意,似乎存在的R包专门用于连接到这个API这里在您的情况下,代码为:

library(LDlinkR)
LDproxy(snp = SNPs.needproxies[i],
        pop = "MXL", 
        r2d = "r2", 
        token = token, 
        file = sprintf("out.%s.txt", SNPs.needproxies[i]))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么/ bin / sh在Mac和Ubuntu上的行为有所不同

来自分类Dev

在Mac OS X 10.8和Ubuntu 10.04上Python的tell()行为有所不同

来自分类Dev

在Windows和Linux上,PropertiesConfiguration和PropertyResourceBundle的行为有所不同

来自分类Dev

Qt GUI在Linux,Mac和Windows上看起来有所不同

来自分类Dev

Eclipse插件中的SWT浏览器在Mac和Windows中的行为有所不同

来自分类Dev

sed命令的行为有所不同

来自分类Dev

从Vim执行的Shell命令的行为有所不同

来自分类Dev

Java SE 6和Java SE 8 JRE在Windows 7上的行为有所不同(文件权限)

来自分类Dev

为什么Java正则表达式在Linux和Windows上的行为会有所不同?

来自分类Dev

尽管代码,版本和配置相同,但JShint在不同的机器上的行为有所不同

来自分类Dev

iOS NSDateFormatter在设备上的行为有所不同

来自分类Dev

对于MSIE 10上的行为有所不同

来自分类Dev

在Mac和Windows上,Python读取tif图像的方式有所不同。为什么?如何?哪个是对的?怎么修?

来自分类Dev

select()在python2和python3上的行为是否有所不同?

来自分类Dev

sed在FreeBSD和Linux上的行为有所不同吗?

来自分类Dev

wc在Unix和Linux上的行为有所不同

来自分类Dev

ssh上的zmv(zsh)在shell和脚本之间的行为有所不同

来自分类Dev

ubuntu上的android lint与mac有所不同

来自分类Dev

Jar文件在Mac和Linux上的工作原理有所不同

来自分类Dev

为什么multiprocessing.Process在Windows和Linux上对于全局对象和函数参数的行为有所不同

来自分类Dev

为什么Windows XP / 2003上的System.Drawing.Image.GetPropertyItem行为与Windows 7有所不同

来自分类Dev

numpy.sum在numpy.array和pandas.DataFrame上的行为有所不同

来自分类Dev

生成器函数在列表和生成器表达式上的行为有所不同吗?

来自分类Dev

jQuery代码在IPHONE4,IPHONE5和IPHONE5上的行为有所不同

来自分类Dev

生成器函数在列表和生成器表达式上的行为有所不同吗?

来自分类Dev

在外壳程序脚本中,`curl ifconfig.me`的行为有所不同

来自分类Dev

保存为* .sh文件时,命令的行为有所不同

来自分类Dev

为什么从函数调用Bash的“源”命令的行为会有所不同?

来自分类Dev

msbuild与命令行vs Jenkins的行为有所不同

Related 相关文章

  1. 1

    为什么/ bin / sh在Mac和Ubuntu上的行为有所不同

  2. 2

    在Mac OS X 10.8和Ubuntu 10.04上Python的tell()行为有所不同

  3. 3

    在Windows和Linux上,PropertiesConfiguration和PropertyResourceBundle的行为有所不同

  4. 4

    Qt GUI在Linux,Mac和Windows上看起来有所不同

  5. 5

    Eclipse插件中的SWT浏览器在Mac和Windows中的行为有所不同

  6. 6

    sed命令的行为有所不同

  7. 7

    从Vim执行的Shell命令的行为有所不同

  8. 8

    Java SE 6和Java SE 8 JRE在Windows 7上的行为有所不同(文件权限)

  9. 9

    为什么Java正则表达式在Linux和Windows上的行为会有所不同?

  10. 10

    尽管代码,版本和配置相同,但JShint在不同的机器上的行为有所不同

  11. 11

    iOS NSDateFormatter在设备上的行为有所不同

  12. 12

    对于MSIE 10上的行为有所不同

  13. 13

    在Mac和Windows上,Python读取tif图像的方式有所不同。为什么?如何?哪个是对的?怎么修?

  14. 14

    select()在python2和python3上的行为是否有所不同?

  15. 15

    sed在FreeBSD和Linux上的行为有所不同吗?

  16. 16

    wc在Unix和Linux上的行为有所不同

  17. 17

    ssh上的zmv(zsh)在shell和脚本之间的行为有所不同

  18. 18

    ubuntu上的android lint与mac有所不同

  19. 19

    Jar文件在Mac和Linux上的工作原理有所不同

  20. 20

    为什么multiprocessing.Process在Windows和Linux上对于全局对象和函数参数的行为有所不同

  21. 21

    为什么Windows XP / 2003上的System.Drawing.Image.GetPropertyItem行为与Windows 7有所不同

  22. 22

    numpy.sum在numpy.array和pandas.DataFrame上的行为有所不同

  23. 23

    生成器函数在列表和生成器表达式上的行为有所不同吗?

  24. 24

    jQuery代码在IPHONE4,IPHONE5和IPHONE5上的行为有所不同

  25. 25

    生成器函数在列表和生成器表达式上的行为有所不同吗?

  26. 26

    在外壳程序脚本中,`curl ifconfig.me`的行为有所不同

  27. 27

    保存为* .sh文件时,命令的行为有所不同

  28. 28

    为什么从函数调用Bash的“源”命令的行为会有所不同?

  29. 29

    msbuild与命令行vs Jenkins的行为有所不同

热门标签

归档