19

getwd()如何直接从 R 控制台打开我的文件夹?如果我想查看我最近刚刚在那里导出的内容,这很有用。谷歌搜索没有显示任何内容,我没有能力构建功能。

4

3 回答 3

25

如果你真的想要一个文件浏览器,你可以创建一个函数来打开目录。根据您使用的操作系统,这会有所不同,但这应该涵盖大多数基础

opendir <- function(dir = getwd()){
    if (.Platform['OS.type'] == "windows"){
        shell.exec(dir)
    } else {
        system(paste(Sys.getenv("R_BROWSER"), dir))
    }
}

如果您不需要它是跨平台的,您可以将其缩减为仅适用于您的操作系统的代码。但是,如果您只想查看给定目录中的文件,那么使用dir应该就足够了。

于 2012-08-27T03:10:47.047 回答
6

您可以使用dir()list.files()显示当前工作目录中的文件或file.choose()浏览目录并选择一个文件。所有三个都默认为当前工作目录。

于 2012-08-27T03:04:59.750 回答
3

system发布答案是因为上述功能对我不起作用 - 通过R 内部的调用(下面的会话信息)使用 macOS 终端命令绕过它。

功能

opendir <- function(directory = getwd()){
  system(sprintf('open %s', shQuote(directory)))
}

会话信息

> sessionInfo()
R version 3.6.0 (2019-04-26)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS High Sierra 10.13.6

Matrix products: default
BLAS:   /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRlapack.dylib

locale:
[1] en_CA.UTF-8/en_CA.UTF-8/en_CA.UTF-8/C/en_CA.UTF-8/en_CA.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils    
[5] datasets  methods   base     

other attached packages:
 [1] here_0.1          htmlwidgets_1.3  
 [3] openxlsx_4.1.0.1  tictoc_1.0       
 [5] plotly_4.9.0      jsonlite_1.6     
 [7] ggplot2_3.1.1     lubridate_1.7.4  
 [9] httr_1.4.0        data.table_1.12.2

loaded via a namespace (and not attached):
 [1] zip_2.0.2          Rcpp_1.0.1        
 [3] RColorBrewer_1.1-2 later_0.8.0       
 [5] pillar_1.4.0       compiler_3.6.0    
 [7] plyr_1.8.4         tools_3.6.0       
 [9] digest_0.6.19      packrat_0.5.0     
[11] tibble_2.1.1       gtable_0.3.0      
[13] viridisLite_0.3.0  pkgconfig_2.0.2   
[15] rlang_0.3.4        shiny_1.3.2       
[17] rstudioapi_0.10    crosstalk_1.0.0   
[19] yaml_2.2.0         withr_2.1.2       
[21] dplyr_0.8.1        stringr_1.4.0     
[23] rprojroot_1.3-2    grid_3.6.0        
[25] tidyselect_0.2.5   glue_1.3.1        
[27] R6_2.4.0           processx_3.3.1    
[29] purrr_0.3.2        tidyr_0.8.3       
[31] magrittr_1.5       ps_1.3.0          
[33] promises_1.0.1     backports_1.1.4   
[35] scales_1.0.0       htmltools_0.3.6   
[37] assertthat_0.2.1   xtable_1.8-4      
[39] mime_0.6           colorspace_1.4-1  
[41] httpuv_1.5.1       labeling_0.3      
[43] stringi_1.4.3      lazyeval_0.2.2    
[45] munsell_0.5.0      crayon_1.3.4    
于 2019-10-03T08:41:58.717 回答