Istnieje wiele dystrybucji Linuksa i wszystkie mają domyślnie zainstalowane różne pakiety.
Jakie języki są zazwyczaj instalowane domyślnie?
Wiem, że można instalować nowe pakiety, ale niektórym administratorom to się nie podoba.
Obecnie zakładam: (Edytuj: Dodałem kilka odpowiedzi. Dzięki)
- Grzmotnąć
- C (uruchom, ale bez kompilacji)
Często dostarczane języki - Python - Perl
Narzędzia (nie języki)
- grep
- robić
- sed
- Yacc
awk
do swojej listygrep
,make
,sed
a nawetyacc
.Odpowiedzi:
Nie można zakładać, że Perl lub Python są zainstalowane, nawet jeśli często. Na przykład redhatopodobne dystrybucje zwykle instalują Pythona, ale inne dystrybucje zwykle nie.
Powinieneś celować w określone dystrybucje, jeśli jest to problem - albo będziesz musiał zbudować własny (np. Python) i sam go wysłać - to jedyny sposób, aby zagwarantować, że jest dostępny. W rzeczywistości, jeśli piszesz nietrywialne oprogramowanie, które musi być przenośne na wiele dystrybucji, prawdopodobnie konieczne jest dostarczenie własnego Pythona.
źródło
Minimum, jakiego można się spodziewać na dowolnym systemie uniksowym, który nie jest antyczny ani osadzony, to POSIX / Singe UNIX . W szczególności wszystkie obecne jednorożce są w większości zgodne z POSIX: 2004, znanym również jako Single Unix numer 6 . To daje sh, sed i awk jako języki programowania.
Jeśli zainstalowane są pakiety programistyczne (których często nie ma na serwerze), programowanie można wykonać za pomocą cc (kompilator C), lex, yacc, make; ale oprócz tego nie są one przydatne na komputerach, na których będziesz wdrażać swoją aplikację, tylko na komputerach programistycznych.
Jeśli założysz Linuksa, większość dystrybucji w pewnym stopniu jest zgodna z Linuksem Standard Base . LSB wykracza poza POSIX. Szczegółowy rdzeń zawiera wykonawczego C z obsługą wielowątkowości NSS PAM, ncurses libz, SSL, oraz kilka innych bibliotekach. LSB nie wymaga bash, tylko POSIX sh, który może być ash lub ksh, ale w praktyce większość niewbudowanych dystrybucji Linuksa dostarcza bash jako część domyślnej instalacji. Specyfikacja języków obejmuje Perl i Python. W praktyce nie wszystkie dystrybucje włączają pełną obsługę LSB do domyślnej instalacji, ale ogólnie można zrobić dobry przypadek, że jeśli jest to określone przez LSB (ale oczywiście nie w specyfikacji pulpitu LSB), powinno zostać zainstalowane na serwerze Linux .
W innych systemach Perl jest bardzo często dostępny. Python nie jest tak powszechny, ale zyskuje popularność. Możesz liczyć na bash lub pdksh (ale nie zawsze; IIRC NetBSD ma tylko ash w domyślnej instalacji). W przypadku języków skompilowanych zawsze znajdziesz środowisko wykonawcze C i prawie zawsze znajdziesz środowisko wykonawcze C ++.
źródło
Marka i yacc mogą nie być dostępne. W zależności od tego, czy korzystasz z systemów wbudowanych, bash też może tam nie być. Koduj sh i Perl, jeśli chcesz wyjść poza to (nie mogę wymyślić jednej dystrybucji, która nie pochodzi z Perlem).
źródło
Jak wielu innych już powiedziało, to zależy od twojej dystrybucji. Na przykład, jeśli masz Fedorę, prawdopodobnie masz następujące elementy:
Aby dowiedzieć się, jakie języki programowania są w twoim systemie, wpisz: man -k language I aby dowiedzieć się, jakie narzędzia / narzędzia / misc masz w systemie, wpisz: man -k name lub: man name
źródło