Чи є якісь ігри, які можуть навчити людей навчатися термінальним командам? [зачинено]


98

Мені здається, навчитися користуватися терміналом - необхідна умова навчитися користуватися Ubuntu. Тому я намагаюся з'ясувати найкращий спосіб вчитися. Чи є там онлайн-флеш-карта Quizlet? Кращий спосіб?


4
Ви хоча б спробували Google?
mdpc

27
Якщо ви хочете аварійного курсу, "Як повернути графічний інтерфейс після того, як я випадково переграв конфігураційні файли, так що погано буде завантажуватися тільки оболонка", це завжди переможець. Попереджуйте, що якщо ви програєте гру, можливі штрафні санкції включають придбання товариша із сірим бородатом на випадок вибору напою або перевстановлення ОС.
Дан Нілі

6
@fluffy: Це навіть не важко: rm -- '-rf ~/*'. Для справжнього завдання спробуйте видалити файл, ім'я якого повністю складається з недрукованих контрольних символів. Бонусні бали, якщо просто надрукувати ім'я зіпсує ваш термінал.
Ільмарі Каронен

3
Це теж не надто важко: P rm -i * і просто відповідь "так", коли ви знайдете потрібний файл.
ooa

5
Чи вважає "реальне життя" грою?
Джонатан

Відповіді:


132

Ви можете додати наступний рядок (команду) в кінці ~/.bashrcфайлу:

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

Щоразу, коли ви відкриваєте термінал, ви дізнаєтесь щось про випадкову команду.


Якщо ви хочете повеселитися, можете скористатися cowsay"утилітою". Щоб його встановити, запустіть це у терміналі:

sudo apt-get install cowsay

Потім додайте наступний рядок у кінці ~/.bashrcфайлу:

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

Або ви можете додати вищезазначений рядок як псевдонім у ~/.bash_aliases. Я додав:

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

Щоразу, коли вам нудно, ви можете набрати термінал: ?(далі - Enter). Це як грати в кубики самостійно.

введіть тут опис зображення


2
Це надзвичайно круто, але в моєму дистрибутиві (Ubuntu 13.04) за допомогою оболонки за замовчуванням я отримую Did you know that: mkdir: nothing appropriate.щоразу, коли запускаю оболонку (щоб бути педантично чітким, я не завжди бачу, mkdirале я завжди бачу nothing appropriate). whatisпрацює, якщо я ставлю ваш рядок коду вгорі, ~/.bashrcале не в кінці. Не впевнений, що це заплутує, але я думаю, що інші зіткнуться з тією ж проблемою.
snim2

3
@ user606723 Я вибрав лише /binтому, що там є найбільш використовувані команди. Але ви можете echo "Did you know that:"; whatis $(ls /usr/share/man/man1 | shuf -n 1 | cut -d. -f1)обрати випадкову сторінку з усіх чоловічих сторінок.
Radu Rădeanu

1
@ RaduRădeanu не розбирають вихід ls!
heinrich5991

3
@ heinrich5991 Ви, звичайно, маєте рацію, але якщо у вашому імені /binє пробіли чи нові рядки, то у вас є більші проблеми, ніж погані звички сценарію ...
evilsoup

1
@ snim2 Я підозрюю, що проблема є псевдонімом для lsдодавання -Fабо якогось іншого прапора, який впливає на вихід. Змінити ls /binна /bin/ls /bin.
Жиль

37

Раніше я грав whatis. Це не зовсім гра, але це порівняно простий спосіб навчитися.

Наприклад, введіть whatis sudo apt-get update і він повертає:

введіть тут опис зображення

Перш ніж виконати будь-яку команду, я натиснув її whatisпершим. Я дізнаюся, що я буду робити, тоді зроблю команду впевнено.

Якщо whatisне надасть багато інформації або якщо мені це незрозуміло, я перейду до читання man.

Наприклад, man sudo.

Google надає вам стільки інформації тут, джерела всередині Ask Ubuntu та за її межами. Тут, LMGTFY: найкращий спосіб дізнатися термінальні команди на Ubuntu


1
Я настійно рекомендую перейти whatis somethingдо прочитаного man somethingПЕРЕД, використовуючи команду "щось" ^^. Особливо для деяких (більшості!) Команд, наприклад, ddнаприклад ... Людина, наприклад, також пояснила б параметр "update" у прикладі, який ви надаєте собі ... У вашому прикладі Whatis показує, що таке "apt-get" а потім намагається знайти визначення команди "update", якої не існує (але могло б мати щось абсолютно нерелевантне)
Олів'є Дулак

27

Так, Terminus - це колись така гра, яка допоможе. Існує жива версія тут , а код на GitHub . Це ідеальна ідея, хоча я б хотів, щоб код був легше розширюваним.


21

Я не знаю жодної гри, проте є деякі корисні утиліти командного рядка, які допомагають.

Що робить команда?

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

Як мені?

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

Як варіант:

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

Як я можу використовувати?

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

Або деякі утиліти підтримують варіант довідки, наприклад:

$ 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...

Вони можуть бути у вигляді command -h, command --help, command -?.

Для інформації:

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

Якщо у вас є щось конкретне, що вам потрібно зробити, Google - ваш друг. Інакше є багато книг, наприклад, книга Баша від О'Ріеллі .


1
Додати aproposта infoдо списку. ;)
Йоганнес

3
Я б уникнув використання <і >зовсім, оскільки люди, яким потрібен напрямок для використання, manможуть не знати небезпеки перенаправлення. Наприклад: command <something> somethingelseстворить somethingelseпорожній файл (або обріже вже існуючий!) У поточному режимі. Це шкідлива звичка. Просто використання man commandцілком зрозуміле. Або man __some__command__щось безпечне.
Олів'є Дулак

Хм, насправді це безпечно, якщо <somethingце не існуючий файл, бо в іншому випадку оболонка поскаржиться, що його не існує (мабуть, так це ДО ПЕРЕД Створення вихідного файлу) ... Але все-таки шкідлива звичка
Олів'є Дулак

1
Влучне зауваження. Просто звик писати документацію в такому форматі. (редагувати) Видалено їх.
azz

14

Погляньте на командний рядок fu

Ви можете переглянути прохолодні фрагменти командного рядка, і якщо ви хочете більш глибокого розуміння, ви можете прочитати посібники команд, які вони використовують.


climagic - це аналогічна послуга, але обмежує довжину команди, щоб вона добре вкладалася в твіти. Дотримуйтесь їх на @climagic .
Томер Коен


13

Ubuntu був розроблений так, щоб він був дуже зручним для користувачів. Навчання користуванню терміналом не є обов'язковою умовою навчитися користуватися Ubuntu. Однак, якщо ви хочете стати користувачем живлення або вирішити проблеми самостійно.

Щоб відповісти на ваше запитання, я не знаю жодної гри, розробленої для того, щоб допомогти або навчити команди команд оболонки, але я б настійно рекомендував наступні ресурси:

Зверніть увагу, що цей підручник використовує Red Hat (інший дистрибутив Linux) та посилається на деякі каталоги, які стосуються лише студентів університету Суррей.

Розмістив проект документації Linux ( http://www.tldp.org/ ), автор Майк Г

Вікікнига з Вікіпедії

Довідковий посібник GNU Bash

Розширений посібник із сценаріїв Bash ( http://linux.die.net/ ), автор Мендель Купер


8

У вас є багато ігор на http://overthewire.org . Найпростіший - бандітський, "націлений на абсолютних початківців".


Відмінне посилання. Здається, що там багато ігор. Banditздається, це гра для абсолютних початківців, як я.
Сундеп


2

Інструмент Memrise має розділ командного рядка unix та linux. Це чудовий інструмент для вивчення чого-небудь у формі перфокарт.


Це не зовсім те, що я мав на увазі, але це виглядає як чудовий навчальний ресурс, який я буду використовувати. Дякую!
Капіталізм переважає

Також є курс ShellFu . Хоча Memrise - це не гра сама по собі, я все ще вважаю її дуже привабливою і вона грає на вашому змагальному характері.
ThomasH

Я просто отримую сторінку рекламних оголошень від memrise.com :(
Paddy Landau

1

Документальний проект Linux має найкращі та оновлені джерела для вивчення БАН.

  1. http://www.tldp.org/LDP/Bash-Beginners-Guide/html/

  2. http://www.tldp.org/LDP/abs/html/

  3. http://www.tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html

Спільнота Ubuntu зібрала всі хороші посилання, які дуже допомагають вивчити BASH

https://help.ubuntu.com/community/CommandLineResources


1

Є гра Uplink . Це було досить весело, і трір - це дуже хороша схожість з оболонкою Linux. Але також є свої команди.


1
Хоча Uplink велика гра, це командний рядок обмежена cd, dir, deleteі reboot. Зовсім недостатньо. Я пам'ятаю, є ще одна хакерська гра, де ви насправді повинні писати сценарії оболонки, але я забув ім'я. Напевно, щось креативне як "хакери"
Тобіас Кіенцлер

1

Найкращим інструментом, який я знайшов для довготривалого запам'ятовування та навчання, є Анкі

http://www.ankisrs.net/

Я використовую картки для створення в Анкі, які вимагають від мене набору відповіді, а не просто флеш-карти. Це будує м’язову пам’ять. Крім того, я щоранку виконую 15 хвилин тренувань, і Анкі сортуватиме свої карти на основі тих, що мені потрібно переглянути.


Звучить як хороший інструмент , але чи він також надає дані про навчання для термінальних команд?
gertvdijk

0

У перші дні UNIX (v6 та v7) (так, перш ніж Linux) існувала серія дуже спрощених навчальних посібників під назвою команди learn. Треба визнати, я розпочав там свою підготовку. У ньому були підручники з командного рядка, vi та трохи програмування на С. Він давно зник. І звичайно, це було до розповсюдження книг на цю тему, велика кількість простого підключення до Інтернету, в основному все, що у вас було, було в основному на manсторінках.

Тож зараз це досить просто, в основному перейдіть до Google, або знайдіть якусь документацію розміщеною. Або скористайтеся Amazon, щоб знайти відповідну книгу. Amazon навіть має рейтинги та відгуки щодо своїх книг.


0

Ну, більшість основ я засвоїв, коли Linux ще здебільшого базувався на командному рядку, а SUSE був одним із небагатьох Linux із встановленням на основі GUI. Я грав із Gentoo цими днями ... просто встановіть вашу систему з такими інструментами, як pm-датчики та інше, незабаром ви знову в терміналі для певної конфігурації

Я не знаю, чи є ще дистрибутив, встановлений через командний рядок, оскільки я перестав працювати з Linux до місяця тому, коли я дізнався, що нарешті зробили крок до отримання GUI-інтерфейсу та цікавого для користувачів, чудово дякую всім програмістам, які зробили багато моїх старих ПК знову корисними !!!

Stupid MS просто занадто дурний, щоб більше не підтримувати свій кращий продукт ... Windows XP ... компанія, яка це робить, напевно не розглядає можливість отримати ОС повністю стабільною і безпечною ... і у випадку Win 7 вони можуть отримав це дуже стабільно та безпечно, але для цього потрібно багато ресурсів.

Дійсно любить Linux, що дозволяє контролювати апаратне забезпечення без величезних компіляторів чи інтерпретаторів чи інших речей, як у Windows.

Але якщо ви хочете дізнатися більше про Linux, Gentoo - це чудовий спосіб створення власної системи, крок за кроком, а також дізнайтеся, як працює Linux. Gentoo також може працювати майже на всьому, незалежно від того, наскільки мало апаратних ресурсів, тож ви можете взяти інший, старший ПК для цих Linux, інсталяційний тест, розважальний час!




0

Це не гра, але це стане в нагоді, коли ви хочете вивчити якусь команду, а Linux не доступний: rextester


0

Матриця для ігрового куба - це те, де я досить довідався (відносно своїх попередніх знань 13 років) трохи про термінал UNIX. Була міні-гра, де ви «зламали» свій шлях до матриці, щоб пізніше пізніше виграли пістолети, щоб грати на цьому рівні. Насправді, бар далеко не одна з моїх улюблених особливостей будь-якої гри коли-небудь.


0

inx (не X) може використовуватися як живий компакт-диск та викладає кінцеві речі на цікавий та інтерактивний спосіб


0

Я думаю, що бандит - один з найкращих, щоб дізнатися та зрозуміти більше про команди Linux та знати більше про Linux для початківців. Ви можете отримати посилання тут

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.