2012-02-09 49 views
6

Điều này có thể trở thành một câu hỏi khá tầm thường, nhưng tôi đã gặp khó khăn trong một thời gian. Tất cả bắt đầu khi tôi cài đặt công cụ chuyển đổi tài liệu phổ dụng pandoc và thêm nó vào đường dẫn của tôi. Vì vậy, khi tôi làm echo $PATH trên thiết bị đầu cuối mặc định trên Mac OS X của tôi, nó cho thấy pandoc và tôi có thể thực hiện nó.Đường dẫn hệ thống so với Sys.getenv ('PATH')

Tuy nhiên, khi tôi thử gọi giống nhau trong phiên R bằng cách sử dụng system(pandoc --version), nó không thể nhận dạng pandoc. Kiểm tra thêm cho thấy rằng system('echo $PATH') không trả lại cùng một đường dẫn mà tôi nhận được trên thiết bị đầu cuối.

Có ai có thể giúp tôi về những gì đang xảy ra không? Tôi thích làm tất cả công việc của mình trên RStudio và do đó sẽ thích hơn nếu tôi có thể sử dụng trực tiếp pandoc từ bên trong. Do đó cần phải tìm ra điều này.

Trả lời

4

R và bash (và chắc chắn là Rstudio) mỗi tạo môi trường riêng biệt. Terminal.app bắt đầu một phiên bash với các thiết lập PATH mặc định của riêng nó. Khi Simon Urbanek gần đây đã trả lời câu hỏi này, ông đã giới thiệu người hỏi đến R-Mac-FAQ 12.19. Phản ứng đầy đủ của anh ta là trong kho lưu trữ R-SIG-MAC. Trên mail client của tôi nó sẽ xuất hiện với một dòng tiêu đề Re: [R-SIG-Mac] PATH và được lập vào ngày 30 tháng một năm 2012. Ông cũng gọi người hỏi tới: http://developer.apple.com/library/mac/#qa/qa1067/_index.html

Như ?EnvVar nói với bạn: "Sys.getenvSys.setenv để đọc và đặt biến môi trường trong phiên R. " Nhưng sau đó bạn dường như đã nhận thức được những chức năng đó.

Các vấn đề liên quan