Nie jestem do końca pewien, którego użyć.Jaka jest różnica między zmiennymi środowiskowymi "USER" i "USERNAME"?
Odpowiedz
na oknach: ENV [ 'username'] wyświetli bieżący nazwa_użytkownika.
W systemie Linux: Jeśli skrypt jest uruchamiany przez sudo, "USER" będzie użytkownikiem sudo-ed-to (zwykle root), a "USERNAME" będzie użytkownikiem, który uruchomił sudo.
Zakładam Mac następujący model Linux, ale musisz sprawdzić (jestem w pracy i brak mac kłuć) :-)
Lista zmiennych XP Środowisko: http://vlaurie.com/computers2/Articles/environment.htm
a oto lista Vista/7 Środowiska powiadomienia variables..you'll są nieco inaczej: http://vlaurie.com/computers2/Articles/environment-variables-windows-vista-7.htm
Edit: najbezpieczniejszym rozwiązaniem byłoby napisać mały funkcję, która określa, jaki system jesteś na (i zbieraj z Twojego komentarza powyżej, gdy chcesz mieć aplikację Write-Once, Run-Anywhere) d na podstawie tego ustala odpowiednie wartości.
Mam skrypt Bash 'echo $ USERNAME'. Kiedy uruchomię go za pomocą 'sudo./Name.sh', zawsze wypisze' root'. Więc nie jestem pewien co do stwierdzenia "USERNAME" będzie użytkownikiem, który uruchomił sudo'. Czy masz na to źródło? O ile mogę powiedzieć, "$ USER' i" $ USERNAME "są identyczne, chociaż w niektórych środowiskach' $ USERNAME' nie istnieje. – Nateowami
jeśli jest Ruby 1.8.6 lub 1.9.2, jest tylko ENV['USER']
(na Macu):
ruby-1.9.2-p0 > ENV.keys.grep /user/i
=> ["USER", "__CF_USER_TEXT_ENCODING"]
Zobacz, jestem na Ruby 1.9.2 na Win 7 i mam zarówno 'ENV [" USER "]' oraz 'ENV [" USERNAME "]' – RyanScottLewis
- 1. Jaka jest różnica między zmiennymi środowiskowymi LIB i LIBPATH dla MS Visual C/C++?
- 2. jaka jest różnica między: %% a% zmiennymi% zmiennych?
- 3. Jaka jest różnica między zmiennymi niezmiennymi i stałymi w Rust?
- 4. Jaka jest różnica między zmiennymi klasowymi różnych typów?
- 5. Jaka jest różnica między literałem a zmiennymi w Pythonie?
- 6. Jaka jest różnica między? : i ||
- 7. Jaka jest różnica między $ i $$?
- 8. Jaka jest różnica między fn i fn *?
- 9. Kompilacja Vue.js z różnymi zmiennymi środowiskowymi
- 10. Różnica między Döcker run --user i --group dodaj parametrów
- 11. Jaka jest różnica między Subtotal i BaseSubtotal?
- 12. Jaka jest różnica między DetachedCriteria i ICriteria
- 13. Jaka jest różnica między & # x00A0; i ?
- 14. Jaka jest różnica między lex i yacc
- 15. jaka jest różnica między dijit i dojo
- 16. Jaka jest różnica między Control.Select() i Control.Focus()?
- 17. Jaka jest różnica między System.Windows.Controls.Control i System.Windows.Forms.Control?
- 18. Jaka jest różnica między apletami i SWING?
- 19. Jaka jest różnica między session.commit() i session.flush()?
- 20. Jaka jest różnica między ImageView.setBackgroundResource i ImageView.setImageResource?
- 21. Jaka jest różnica między Konwertuj i parsuj?
- 22. Jaka jest różnica między JSP i JSTL?
- 23. Jaka jest różnica między Lazarus i CodeTyphon
- 24. Jaka jest różnica między crc32 i crc32b?
- 25. Jaka jest różnica między TypedArray.getInteger() i TypedArray.getInt()?
- 26. jaka jest różnica między ARM7 i ARM7s
- 27. Jaka jest różnica między http_build_str() i http_build_query()?
- 28. Jaka jest różnica między "CompletionStage" i "CompletableFuture"?
- 29. Jaka jest różnica między mock.patch.object (... i mock.patch (
- 30. Jaka jest różnica między GetBlobReference i GetBlobReferenceFromServer?
To w rzeczywistości nie jest specyficzne dla Ruby. Są to zmienne środowiskowe, które każdy typ skryptu lub pliku wykonywalnego może zobaczyć i wykorzystać. –
Jestem bardziej zaniepokojony kompatybilnością z OS. Czy w instalacjach na komputerach Mac istnieje 'ENV ['USER']'? Czy 'ENV ['USER'] == ENV ['USERNAME']' w systemie Linux jest instalowany? Itp .. – RyanScottLewis
W systemie Linux, czy masz "LOGNAME"? –