Czy są jakieś gry, które mogą przeszkolić ludzi do nauki poleceń terminalowych? [Zamknięte]


98

Wydaje mi się, że nauka korzystania z terminala jest niezbędna do nauki korzystania z Ubuntu. Staram się więc znaleźć najlepszy sposób na naukę. Czy jest tam dostępna karta flash online Quizlet? Lepszy sposób?


4
Czy przynajmniej wypróbowałeś Google?
mdpc

27
Jeśli chcesz skorzystać z kursu awaryjnego, „Jak odzyskać GUI po tym, jak przypadkowo przesadziłem z plikami konfiguracyjnymi tak bardzo, że tylko ładuje się powłoka”, zawsze wygrywa. Ostrzegamy, że jeśli przegrasz grę, możliwe kary to między innymi zakup siwobrodego przyjaciela przez przypadek wybranego przez niego napoju lub ponowna instalacja systemu operacyjnego.
Dan Neely

6
@fluffy: To nawet nie jest trudne: rm -- '-rf ~/*'. W przypadku prawdziwego wyzwania spróbuj usunąć plik, którego nazwa składa się całkowicie z niedrukowalnych znaków kontrolnych. Punkty bonusowe, jeśli samo wydrukowanie nazwy zakłóca działanie twojego terminala.
Ilmari Karonen

3
To też nie jest zbyt trudne: P rm -i * i po prostu odpowiedz tak, gdy natrafisz na odpowiedni plik.
oo

5
Czy „prawdziwe życie” liczy się jako gra?
Jonathan

Odpowiedzi:


132

Możesz dodać następujący wiersz (polecenie) na końcu ~/.bashrcpliku:

echo "Did you know that:"; whatis $(ls /bin | shuf -n 1)

Za każdym razem, gdy otwierasz terminal, dowiesz się czegoś o losowym poleceniu.


Jeśli chcesz się zabawić, możesz użyć cowsay„narzędzia”. Aby go zainstalować, uruchom to w terminalu:

sudo apt-get install cowsay

Następnie dodaj następujący wiersz na końcu ~/.bashrcpliku:

cowsay -f $(ls /usr/share/cowsay/cows | shuf -n 1 | cut -d. -f1) $(whatis $(ls /bin) 2>/dev/null | shuf -n 1)

Lub możesz dodać powyższą linię jako alias w ~/.bash_aliases. Dodałem:

alias ?='cowsay -f $(ls /usr/share/cowsay/cows | shuf -n 1 | cut -d. -f1) $(whatis $(ls /bin) 2>/dev/null | shuf -n 1)'

Za każdym razem, gdy się nudzisz, możesz wpisać terminal: ?(po którym następuje Enter). To tak, jakbyś sam grał w kości.

wprowadź opis zdjęcia tutaj


2
To bardzo fajne, ale na mojej dystrybucji (Ubuntu 13.04) przy użyciu domyślnej powłoki otrzymuję ją za Did you know that: mkdir: nothing appropriate.każdym razem, gdy uruchamiam powłokę (aby być pedantycznie wyraźnym, nie zawsze widzę, mkdirale zawsze widzę nothing appropriate). whatisdziała, jeśli umieszczę twój wiersz kodu na początku, ~/.bashrcale nie na końcu. Nie jestem pewien, co to popsuło, ale myślę, że inni napotkają ten sam problem.
snim2

3
@ user606723 Wybrałem tylko /bindlatego, że tam są najczęściej używane polecenia. Możesz jednak użyć echo "Did you know that:"; whatis $(ls /usr/share/man/man1 | shuf -n 1 | cut -d. -f1)losowej strony ze wszystkich stron podręcznika.
Radu Rădeanu

1
@ RaduRădeanu nie analizuje danych wyjściowych ls!
heinrich5991

3
@ heinrich5991 oczywiście masz całkowitą rację, ale jeśli coś w twojej /binnazwie ma spacje lub znaki nowej linii, to masz większe problemy niż złe nawyki skryptowe ...
evilsoup

1
@ snim2 Podejrzewam, że problemem jest alias lsdodawania -Flub inna flaga wpływająca na wynik. Zmień ls /binna /bin/ls /bin.
Gilles

37

Kiedyś się bawiłem whatis. To nie jest dokładnie gra, ale jest to stosunkowo łatwy sposób na naukę.

Na przykład wpisz whatis sudo apt-get update i zwraca:

wprowadź opis zdjęcia tutaj

Zanim wykonam jakieś polecenie, uderzam je whatisnajpierw. Uczę się, co mam zamiar zrobić, a następnie z pewnością wykonam polecenie.

Jeśli whatisnie dostarczy zbyt wiele informacji lub jest dla mnie niejasna, pójdę i przeczytam man.

Na przykład man sudo.

Google podaje tutaj tyle informacji, źródła w Ask Ubuntu i na zewnątrz. Tutaj LMGTFY: najlepszy sposób na naukę poleceń terminalowych na Ubuntu


1
Zdecydowanie zalecam whatis somethingprzeczytanie man somethingPRZED przeczytaniem PRZED użyciem polecenia „coś” ^^. Zwłaszcza w przypadku niektórych (większości!) Poleceń, ddnp. ... Na przykład człowiek wyjaśniłby również parametr „aktualizacja” w podanym przez ciebie przykładzie ... W twoim przykładzie whatis pokazuje, co to jest „apt-get” a następnie próbuje znaleźć definicję polecenia „aktualizacja”, która nie istnieje (ale mogłaby mieć i być czymś zupełnie nieistotnym)
Olivier Dulac

27

Tak, Terminus to kiedyś taka gra, która pomoże. Jest tutaj wersja na żywo , a kod jest na github . To fajny pomysł, chociaż wolałbym, żeby kod był łatwiejszy do rozszerzenia.


21

Nie znam żadnych gier, jednak istnieją przydatne narzędzia wiersza poleceń.

Co robi polecenie?

whatis command
# example:
$ whatis cut
cut (1)              - remove sections from each line of files

Jak ja?

man -k keyword
# example:
$ man -k "remove empty"
rmdir (1)            - remove empty directories

Alternatywnie:

apropos keyword  
# defaults to printing every result with at least one of the keywords supplied
#   use --and to only print results matching multiple keywords.
$ apropos zip --and extract
funzip (1)           - filter for extracting from a ZIP archive in a pipe
unzip (1)            - list, test and extract compressed files in a ZIP archive
unzipsfx (1)         - self-extracting stub for prepending to ZIP archives
uz (1)               - gunzips and extracts a gzip'd tar'd archive

Jak korzystać?

man command
# example:
man tar
# use '?' key to search, and 'q' to quit.

Lub niektóre narzędzia obsługują opcję pomocy, na przykład:

$ umount --help
Usage: umount -h | -V
   umount -a [-d] [-f] [-r] [-n] [-v] [-t vfstypes] [-O opts]
   umount [-d] [-f] [-r] [-n] [-v] special | node...

Mogą one być w formie command -h, command --help, command -?.

Dla informacji:

info command
# example:
$ info cat
# shows an information page

Jeśli masz coś konkretnego do osiągnięcia, Google jest Twoim przyjacielem. W przeciwnym razie istnieje wiele książek, takich jak książka Bash z O'Rielly .


1
Dodaj aproposi infodo listy. ;)
Johannes

3
Chciałbym unikać <i >w ogóle, jako osoby, które potrzebują kierunek do używania mannie może wiedzieć niebezpieczeństwo przekierowania. Na przykład: command <something> somethingelseutworzy somethingelsepusty plik (lub obetnie istniejący!) W bieżącym katalogu. To zły nawyk. Samo użycie man commandjest dość oczywiste. Lub man __some__command__cokolwiek bezpiecznego.
Olivier Dulac

hmm, właściwie to jest bezpieczne, jeśli <somethingnie jest to plik, ponieważ w przeciwnym razie powłoka będzie narzekać, że nie istnieje (najwyraźniej robi to PRZED utworzeniem pliku wyjściowego) ... Ale wciąż zły nawyk
Olivier Dulac

1
Słuszna uwaga. Po prostu przywykłem do pisania dokumentacji w tym formacie. (edytuj) Usunąłem je.
azz


13

Ubuntu został zaprojektowany tak, aby był bardzo przyjazny dla użytkownika. Nauka korzystania z terminala nie jest warunkiem wstępnym do nauki korzystania z Ubuntu. Jest tak jednak, jeśli chcesz zostać zaawansowanym użytkownikiem lub samodzielnie rozwiązać problemy.

Aby odpowiedzieć na twoje pytanie, nie znam żadnych gier zaprojektowanych w celu pomocy lub nauki poleceń powłoki, ale gorąco polecam następujące zasoby związane z bash i administracją systemem:

Należy pamiętać, że ten samouczek wykorzystuje Red Hat (kolejna dystrybucja Linuksa) i odwołuje się do niektórych katalogów, które dotyczą tylko studentów University of Surrey.

Prowadzony przez The Linux Documentation Project ( http://www.tldp.org/ ), autor Mike G.

Wikibook z Wikipedii

Podręcznik referencyjny GNU Bash

Advanced Bash-Scripting Guide ( http://linux.die.net/ ), autor Mendel Cooper


8

Masz mnóstwo gier na http://overthewire.org . Najłatwiej jest Bandit, „przeznaczony dla absolutnie początkujących”.


Doskonały link. Wygląda na to, że jest tam wiele gier wojennych. Banditwydaje się być grą dla absolutnie początkujących takich jak ja.
Niedziela


2

Narzędzie Memrise ma sekcję wiersza poleceń unix i Linux. Jest to doskonałe narzędzie do nauki czegokolwiek w formie kart ciosów.


Nie dokładnie to miałem na myśli, ale wygląda na świetny zasób do nauki, którego użyję. Dzięki!
Kapitalizm panuje

Istnieje również kurs ShellFu . Chociaż Memrise nie jest grą per se, nadal uważam ją za bardzo wciągającą i ma ona wpływ na twoją rywalizację.
ThomasH

Właśnie dostaję stronę z reklamami z memrise.com :(
Paddy Landau,


1

Jest gra Uplink . Było całkiem fajnie i są całkiem dobre podobieństwa do powłoki Linuksa. Ale ma też swoje własne polecenia.


1
Choć Uplink to świetna gra, to linia poleceń jest ograniczona do cd, dir, deletei reboot. Zupełnie niewystarczające. Pamiętam, że jest inna gra hakerów, w której musisz pisać skrypty powłoki, ale zapomniałem nazwy. Prawdopodobnie coś kreatywnego jako „hakerzy”
Tobias Kienzler

1

Najlepszym narzędziem, jakie znalazłem do długoterminowego zapamiętywania i uczenia się, jest Anki

http://www.ankisrs.net/

W Anki używam tworzenia kart, które wymagają ode mnie wpisania odpowiedzi, a nie tylko karty flash. Buduje pamięć mięśni. Dodatkowo codziennie rano wykonuję 15 minut treningu, a Anki posortuje moje karty według tych, które muszę przejrzeć.


Brzmi jak dobre narzędzie , ale czy dostarcza również danych szkoleniowych do poleceń terminalowych?
gertvdijk

0

We wczesnych dniach UNIX (wersja 6 i 7) (tak przed Linuksem) istniała seria bardzo uproszczonych samouczków pod komendą o nazwie learn. Muszę przyznać, że tam zacząłem swój trening .. miał tutoriale z linii poleceń, vi i trochę programowania C. Dawno już zniknął. I oczywiście było to przed rozpowszechnieniem książek na ten temat, dużą ilością łatwej łączności z Internetem, w zasadzie wszystko, co mieliście, to w zasadzie manstrony.

Więc teraz jest to dość proste, w zasadzie przejdź do Google, albo znajdź opublikowaną dokumentację. Lub użyj Amazon, aby znaleźć odpowiednią książkę. Amazon ma nawet oceny i recenzje swoich książek.


0

Cóż, większość podstaw, których nauczyłem się, kiedy Linux był nadal w większości oparty na wierszu poleceń, a SUSE był jednym z niewielu Linux z instalacją opartą na GUI. Tym razem bawiłem się Gentoo ... po prostu zainstaluj swój system z kilkoma narzędziami, takimi jak czujniki pm i tym podobne, wkrótce wrócisz do terminalu, żeby trochę konfiguracji

Nie wiem, czy nadal istnieje dystrybucja, która jest instalowana za pomocą wiersza polecenia, ponieważ przestałem pracować z Linuksem jeszcze miesiąc temu, kiedy dowiedziałem się, że w końcu zrobili krok, aby stać się oparty na GUI i interesujący dla użytkowników, świetnie dzięki wszystkim programistom, którzy sprawili, że wiele moich starych komputerów znów się przydało !!!

Głupie MS po prostu jest zbyt głupie, aby dłużej utrzymywać swój najlepszy produkt ... Windows XP ... firma, która to robi, z pewnością nie rozważa uzyskania w pełni stabilnego i bezpiecznego systemu operacyjnego ... a w przypadku Win 7 mogą dzięki temu jest bardzo stabilny i bezpieczny, ale wymaga to wielu zasobów.

Naprawdę uwielbiam sposób, w jaki Linux steruje sprzętem bez wielkich kompilatorów, interpreterów lub innych przeszkód, na przykład w systemie Windows.

Ale jeśli chcesz dowiedzieć się więcej o Linuksie, Gentoo to świetny sposób na zbudowanie własnego systemu, krok po kroku, a także dowiedz się, jak działa Linux. Gentoo jest również w stanie działać na prawie wszystkim, bez względu na to, jak małe są zasoby sprzętowe, dzięki czemu możesz wziąć inny, starszy komputer na te Linux-y, testy instalacji, zabawy!





0

Matryca kostki gry jest miejscem, w którym nauczyłem się (w porównaniu z moją 13-letnią wcześniejszą wiedzą) trochę o terminalu UNIX. Była mini-gra, w której „hakowałeś” swoją drogę do matrycy, aby wysadzić broń do odbioru później, gdy grasz na tym poziomie. Tak naprawdę to zdecydowanie jedna z moich ulubionych funkcji w każdej grze.


0

inx (nie jest X) może być używany jako live cd i uczy rzeczy terminalu w zabawny i interaktywny sposób


0

Myślę, że bandit jest jednym z najlepszych, którzy mogą dowiedzieć się więcej o poleceniach Linuksa i wiedzieć więcej o Linuksie dla początkujących. Możesz pobrać link stąd

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.