Tôi đang chạy Ruby trên Windows mặc dù tôi không biết điều đó có tạo nên sự khác biệt hay không. Tất cả những gì tôi muốn làm là lấy đường dẫn tuyệt đối của thư mục làm việc hiện tại. Điều này có thể từ irb? Rõ ràng từ một kịch bản nó có thể sử dụng File.expand_path(__FILE__)
cách lấy đường dẫn tuyệt đối của thư mục làm việc hiện tại từ irb
Nhưng từ IRB Tôi đã thử các sau đây và có một "Permission denied" lỗi:
File.new(Dir.new(".").path).expand
Câu hỏi đặt ra là không thực sự rõ ràng: Bạn có muốn a) thư mục làm việc hiện hành (đó là 'Dir.pwd') hay bạn muốn thư mục chứa hiện chạy script được đặt (là 'File.dirname (__ FILE __)')? Hãy tưởng tượng gọi một kịch bản từ bất cứ nơi nào khác (như 'ruby testdirectory/testscript.rb') ở đây, cả hai sẽ khác! – amenthes
@amenthes Bạn yêu cầu câu hỏi của tôi là không rõ ràng và sau đó hỏi "Bạn có muốn a) thư mục làm việc hiện tại ...." và câu hỏi của tôi nói "Tất cả những gì tôi muốn làm là nhận được * đường dẫn tuyệt đối * thư mục làm việc hiện tại ... ". Có gì không rõ ràng? –
không rõ ràng vì câu "Rõ ràng từ một kịch bản có thể sử dụng' File.expand_path (__ FILE __) '" - vì vị trí '__FILE__' là một động vật khác với thư mục làm việc hiện tại (đó là' Dir.pwd'). – amenthes