Robię skrypt basha. Mój niestandardowy bashrc, żeby być bardziej precyzyjnym. Muszę mieć osobne konfiguracje, w zależności od tego, w jakim "Linux" jestem (podsystem Windows 10 Linux lub rzeczywisty Linux).Jak odróżnić Linuxa od Windowsa 10 bash podczas tworzenia skryptów bashowych
Jak mogę je odróżnić?
Czego próbowałem:
$OSTYPE
- zarówno powrócićlinux-gnu
uname -a
- zarówno powrócić podobnyLinux COMPUTER_NAME_HERE 3.4.0+ #1 PREEMPT Thu Aug 1 17:06:05 CST 2013 x86_64 x86_64 x86_64 GNU/Linux
lsb_release -a
- zarówno powrócićubuntu xx.xx
cat /etc/issue.net
- zarówno powrócićUbuntu 14.04.4 LTS
ld -v
- zarówno powrótGNU ld (GNU Binutils for Ubuntu) 2.24
Jedynym sposobem znalazłem do tej pracy jest przedstawienie jakiegoś konkretnego użytkownika na podsystem Windows i używać $USER
, ale to nie jest opcja, jestem gotów do użycia. Potrzebuję tego do pracy po wyjęciu z pudełka, bez niestandardowych nazw użytkowników, zmiennych środowiskowych itp.
Hmm, co to jest podsystem Linux dla Windows 10? Jak to zainstalować? W każdym razie myślę, że każdy bash Windows rozpoznaje ścieżki w stylu Windows, które zawierają litery dysków, więc sprawdź, czy 'c: /' istnieje, a './c: /' nie. –
@ n.m. Jest to coś takiego, jak system Linux pod oknami. Nie jak vagrant czy inni (gdzie uruchamiasz linux jako system wirtualny), ale raczej komendy linuxowe, przetłumaczone na windows (na poziomie jądra). Nie mogę tego więcej wytłumaczyć, ponieważ sam się o tym uczę .. Wystarczy google "ubuntu na windows" i znajdziesz go. Muszę powiedzieć, że jestem całkiem podekscytowany tym, ponieważ uwielbiam okna, ale ciężko jest użyć go jako systemu operacyjnego. (Szczególnie dla RubyOnRails) – PragmaticEd
Ah, więc to jest jak wino w innym kierunku. Schludny! –