2011-01-20 20 views
28

Bản sao có thể xảy ra:
detecting operating system in R (e.g. for adaptive .Rprofile files)
How can I determine in R what platform I'm running on?Làm thế nào để kiểm tra các hệ điều hành trong vòng R

Có một chức năng nguyên thủy trong R mà sẽ trả về thông tin hệ thống trên đó R đang chạy ? Tôi quan tâm chủ yếu đến hệ điều hành, nhưng bất kỳ dữ liệu nào khác cũng có thể hữu ích.

+1

Có vẻ như trùng lặp [phát hiện hệ điều hành trong R (ví dụ: đối với tệp .Rprofile thích nghi)] (http://stackoverflow.com/questions/4463087/detecting-operating-system-in-reg-for-adaptive-rprofile- tệp) – Marek

+1

Và tệp này: http://stackoverflow.com/questions/3919621/how-can-i-determine-in-r-what-platform-im-running-on/3922058#3922058 –

Trả lời

33

sử dụng Sys.info() để biết mọi thông tin về hệ thống, Sys.info()['sysname'] cung cấp cho bạn hệ điều hành.

R.Version() cung cấp cho bạn phiên bản R, bao gồm kiến ​​trúc bạn đang chạy (32bit - i386 - so với 64bit - x64 -).

R.home()system.file(package="xxx") cung cấp cho bạn thông tin về vị trí của thư mục gốc. các tệp gói.

+2

Bạn có thay đổi 'Sys không .info() $ sysname' to 'Sys.info() ['sysname']'? Trước đây sẽ ném lỗi "Lỗi trong Sys.info() $ sysname: $ operator không hợp lệ cho vectơ nguyên tử". – Jonathan

+0

@ Jonathan đúng, tôi nên đã kiểm tra –

+3

Thay đổi đó là khá có thể gần đây hơn câu trả lời ... Tôi nghĩ rằng R thắt chặt rằng bài 2.13 hay như vậy. –

25

Dưới đây là ba cách:

> .Platform$OS.type 
[1] "unix" 
> version$os ## or R.version$os 
[1] "linux-gnu" 
> Sys.info()["sysname"] 
sysname 
"Linux" 

Hãy xem ?Sys.info cho một số chi tiết và provisos.

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