【问题标题】:Change working directory with another directory in plumber R使用管道工 R 中的另一个目录更改工作目录
【发布时间】:2021-02-21 15:13:38
【问题描述】:

我正在使用 R 中的 Plumber API 创建 Web 应用程序。我试图使用管道工更改工作目录。

当前文件在C:/xampp/htdocs/testMDA 中,我试图用C:\fileUpload\abc 更改目录。 abc 在函数中作为参数传递

library(plumber)

#* @get /string
getString <- function(get = ""){
  dir <- setwd(file.path("C:/fileUpload/", get))
  print(dir)
}

输出我得到的是当前目录

"C:/xampp/htdocs/testMDA"

【问题讨论】:

  • 尝试print(getwd()),因为 setwd 将返回当前 wd
  • @SinhNguyen 我的意图不是打印工作目录。目的是使用管道工更改目录。
  • 我的意思是在你setwd() 之后,你需要使用getwd() 来获取当前的工作目录。 setwd() 不会返回它设置的新值。

标签: r function api plumber setwd


【解决方案1】:

尽量避免命名参数,如基本函数(进入你的函数)。在您的示例中,我看不到您在哪里使用管道工。如果您运行以下代码会发生什么(假设文件夹“fileUpload”存在)?如果它运行,你可以将它插入到你的函数中。

dir <- file.path("C:/fileUpload/", "abc")
setwd(dir)
getwd()

【讨论】:

    【解决方案2】:

    我的问题本身就有答案。认为在管道工目录中更改为 C:\fileUpload\abc 但管道工不会显示此内容,而是管道工打印其正在运行的工作目录。

    让我们看看发生了什么!

    当管道工运行时。它在其根文件夹中运行,它将打印其根完整路径。它确实更改了plumber swagger 中的目录,但不会打印getwd。我的目标是更改目录。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-24
      • 1970-01-01
      • 2012-07-22
      相关资源
      最近更新 更多