我想編寫一個腳本,將其打包成一個gem,它將修改其參數,然後用修改後的params創建一個新的ruby進程。換句話說,類似於修改其params的shell腳本,然後執行exec $SHELL $*
。爲了做到這一點,我需要一種可靠的方法來發現執行當前腳本的ruby可執行文件的路徑。我還需要獲取傳遞給當前進程的完整參數 - 包括Ruby參數和腳本參數。我該如何可靠地發現Ruby可執行文件的完整路徑?
8
A
回答
6
瑞克源代碼做這樣的:
RUBY = File.join(Config::CONFIG['bindir'], Config::CONFIG['ruby_install_name']).
sub(/.*\s.*/m, '"\&"')
4
如果您要檢查在Linux上:讀取文件:
- 的/ proc/PID/EXE
- 的/ proc/PID/CMDLINE
其他有用的信息中可以找到/ proc/PID dir
0
對於腳本參數,當然要用ARGV
。
相關問題
- 1. Ruby文件完整路徑
- 2. 從C++獲取python可執行文件的完整路徑
- 3. 給定一個可執行文件,顯示其完整路徑
- 4. 如何獲取node.js中$ PATH中的可執行文件的完整路徑?
- 5. 可執行文件的路徑
- 6. 可否在我的路徑中查找可執行文件?
- 7. 可執行路徑
- 8. NativeProcessStartupInfo可執行文件,絕對路徑
- 9. 如何獲得任意ruby類的完整文件路徑?
- 10. 可執行文件能發現它自己的路徑嗎? (Linux)的
- 11. Bash:如何搜索路徑中的可執行文件?
- 12. 如何檢查可執行文件的路徑擴展
- 13. 如何獲得本地文件在Firefox的完整路徑3
- 14. xcode:在路徑上沒有可啓動的可執行文件
- 15. 如何查找用於運行Ruby腳本的完整路徑
- 16. 如何刪除可執行文件路徑錯誤
- 17. 如何找出路徑是否導致可執行文件?
- 18. 如何使用install4j查找系統可執行文件路徑?
- 19. 如何獲取服務可執行文件路徑
- 20. 有文件路徑如何檢查它是否可執行?
- 21. OS X如何獲取應用程序的基本路徑,超出可執行的完整路徑
- 22. 我該如何讓Gitolite post-receive hook顯示修改文件的完整路徑?
- 23. 安裝openwrt系統時未發現ruby可執行文件
- 24. 如何分發將可執行文件添加到路徑的Python包?
- 25. 在Angular2中不能可靠地觸發路徑參數訂閱
- 26. 如何在hash-bang可執行文件中引用本地ruby?
- 27. 查找可執行文件是否在路徑中可用
- 28. 如何從一個文件輸入獲取該文件的完整路徑
- 29. 如何讓Ruby文件作爲可執行文件運行?
- 30. 其中是Ruby可執行文件和gem.bat在Linux中的路徑?
不更新一個答案直列你的問題,只需添加一個答案,你自己的問題。這樣人們就可以高舉你的答案。 – 2008-10-17 20:22:59
請注意,您可能還需要'require'rbconfig'` – 2009-11-26 21:35:24