2014-07-24 5 views
0

내 패키지에서 작은 코드 조각을 변경해야하며 해당 코드가있을 수있는 파일 이름을 모두 회수 할 수 없다고 가정 해 봅니다.코드 스 니펫에서 .R 파일 목록 검색

R 폴더에있는 파일 목록에서 문제 코드가 들어있는 파일을 모두 식별 할 수있는 패키지 개발 도구가 있습니까? 지금

의 R 디렉토리에 14 개 파일 나는

> c(sapply(list.files("R", full.names = TRUE), function(x){ 
    grep("data/", readLines(x, warn = FALSE), value = TRUE) 
    }), recursive = TRUE) 
#              R/load-event.R 
# " on.exit(file.remove(paste0(\"data/\", list.files(\"data\"))))" 

을 사용하고 그러나 파일 목록이 긴 경우이 시간이 많이 소요 될 수 있고, 파일 자체가 크다.

+0

RStudio를 사용하는 경우 파일을 편집/찾기하면 디렉토리를 지정할 때 매우 유용 할 수 있습니다. – lawyeR

+0

아, 네. 고마워. 저는 RStudio에 관한 것입니다. 지난 몇 년 동안 얼마나 개선되었는지 사랑해. –

답변

2

grep을 (를) 찾고있는 것처럼 들립니다. 다음 명령은 문자열이 data/ 인 모든 파일을 나열합니다.

grep -l 'data/' R/* 
+0

터미널에서 확실히 빠르지 만,'grep'은 원래 코드의 주요 기능입니다. 그리고 콘솔에서 실행할 수있는 R 명령을 찾고 있습니다. –

+1

@RichardScriven,'R'에서'system'을 사용하여 외부 명령을 실행할 수 있습니다. 그러나, 나는 당신이 추구하는 것을 이해합니다. R은 파일 시스템 조작을 위해 고안된 언어가 아니며, 거의 디자인 적으로 보면 어설프다. – merlin2011

관련 문제