Có trò chơi nào có thể đào tạo mọi người học các lệnh đầu cuối không? [đóng cửa]


98

Dường như với tôi, việc học cách sử dụng thiết bị đầu cuối là điều kiện tiên quyết để học cách sử dụng Ubuntu. Vì vậy, tôi đang cố gắng tìm ra cách tốt nhất để học. Có thẻ flash trực tuyến Quizlet được đặt ra không? Một cách tốt hơn?


4
Bạn đã thử ít nhất Google chưa?
mdpc

27
Nếu bạn muốn có một khóa học sự cố, "Cách lấy lại GUI sau khi tôi vô tình làm hỏng các tập tin cấu hình vì vậy chỉ có Shell sẽ tải" luôn là người chiến thắng. Được cảnh báo rằng nếu bạn thua trò chơi, các hình phạt có thể xảy ra bao gồm mua cho một người bạn màu xám một trường hợp lựa chọn đồ uống của anh ta hoặc cài đặt lại hệ điều hành.
Dan Neely

6
@fluffy: Điều đó thậm chí không khó : rm -- '-rf ~/*'. Đối với một thử thách thực sự, hãy thử xóa một tệp có tên bao gồm các ký tự điều khiển không thể in được. Điểm thưởng nếu chỉ in tên làm rối thiết bị đầu cuối của bạn.
Ilmari Karonen

3
Điều đó cũng không quá khó: P rm -i * và chỉ trả lời có khi bạn gặp đúng tệp.
ooa

5
"Cuộc sống thực" có được tính là một trò chơi không?
Jonathan

Câu trả lời:


132

Bạn có thể thêm dòng (lệnh) sau vào cuối ~/.bashrctệp của mình :

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

Mỗi khi bạn mở terminal, bạn sẽ học được điều gì đó về một lệnh ngẫu nhiên.


Nếu bạn muốn vui vẻ, bạn có thể sử dụng cowsay"tiện ích". Để cài đặt nó, hãy chạy nó trong terminal:

sudo apt-get install cowsay

Sau đó thêm dòng sau vào cuối ~/.bashrctệp của bạn :

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

Hoặc bạn có thể thêm dòng trên dưới dạng bí danh ~/.bash_aliases. Tôi đã thêm:

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

Bất cứ khi nào bạn cảm thấy buồn chán, bạn có thể nhập vào thiết bị đầu cuối: ?(tiếp theo Enter). Nó giống như chơi súc sắc một mình.

nhập mô tả hình ảnh ở đây


2
Điều đó cực kỳ tuyệt vời, nhưng trên bản phân phối của tôi (Ubuntu 13.04) bằng cách sử dụng trình bao mặc định tôi nhận được Did you know that: mkdir: nothing appropriate.mỗi khi tôi khởi động một trình bao (để rõ ràng về mặt giáo dục, tôi không luôn thấy mkdirnhưng tôi luôn thấy nothing appropriate). whatishoạt động nếu tôi đặt dòng mã của bạn ở đầu ~/.bashrcnhưng không ở cuối. Không chắc nó là thứ gì làm nó rối tung lên, nhưng tôi đoán những người khác sẽ gặp vấn đề tương tự.
snim2

3
@ user606723 Tôi chỉ chọn /binvì có nhiều lệnh được sử dụng nhất. Nhưng bạn có thể sử dụng echo "Did you know that:"; whatis $(ls /usr/share/man/man1 | shuf -n 1 | cut -d. -f1)để chọn một trang ngẫu nhiên từ tất cả các trang man.
Radu Rădeanu

1
@ RaduRădeanu không phân tích đầu ra của ls!
heinrich5991

3
@ heinrich5991 tất nhiên bạn nói chung là đúng, nhưng nếu bất cứ điều gì trong bạn /bincó khoảng trắng hoặc dòng mới trong tên của nó thì bạn có vấn đề lớn hơn thói quen viết kịch bản xấu ...
evilsoup

1
@ snim2 Tôi nghi ngờ vấn đề là bí danh cho lsviệc thêm -Fhoặc một số cờ khác ảnh hưởng đến đầu ra. Thay đổi ls /binthành /bin/ls /bin.
Gilles

37

Tôi đã từng chơi với whatis. Đây không hẳn là một trò chơi, nhưng đó là một cách tương đối dễ học.

Ví dụ, gõ whatis sudo apt-get update và nó trả về:

nhập mô tả hình ảnh ở đây

Trước khi tôi thực hiện bất kỳ lệnh nào, tôi nhấn nó whatistrước. Tôi học được những gì tôi sẽ làm, sau đó tôi sẽ thực hiện mệnh lệnh một cách tự tin.

Nếu whatiskhông cung cấp nhiều thông tin hoặc nếu nó không rõ ràng với tôi, tôi sẽ đến và đọc man.

Ví dụ , man sudo.

Google cung cấp cho bạn rất nhiều thông tin ở đây, các nguồn bên trong Hỏi Ubuntu và bên ngoài. Tại đây, LMGTFY: cách tốt nhất để tìm hiểu các lệnh đầu cuối trên Ubuntu


1
Tôi thực sự khuyên bạn nên làm theo whatis somethingvới một bài đọc đầy đủ về man somethingTRƯỚC KHI sử dụng lệnh "cái gì đó" ^^. Đặc biệt đối với một số lệnh (hầu hết!), ddVí dụ như ... Ví dụ, con người cũng sẽ giải thích tham số "cập nhật" trong ví dụ bạn tự cung cấp ... Trong ví dụ của bạn, whatis hiển thị "apt-get" là gì và sau đó cố gắng tìm định nghĩa của lệnh "cập nhật", không tồn tại (nhưng có thể có và là một thứ hoàn toàn không liên quan)
Olivier Dulac

27

Vâng, Terminus là một trong những trò chơi như vậy sẽ giúp. Có một phiên bản trực tiếp ở đây và mã trên github . Đó là một ý tưởng gọn gàng, mặc dù tôi muốn các mã dễ dàng mở rộng hơn.


21

Tôi không biết về bất kỳ trò chơi nào, tuy nhiên có một số tiện ích dòng lệnh hữu ích.

Một lệnh làm gì?

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

Làm thế nào để tôi?

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

Cách khác:

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

Làm thế nào để tôi sử dụng?

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

Hoặc, một số tiện ích hỗ trợ tùy chọn trợ giúp, chẳng hạn như:

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

Đây có thể là theo hình thức command -h, command --help, command -?.

Để biết thông tin:

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

Nếu bạn có một cái gì đó cụ thể bạn cần phải hoàn thành, Google là bạn của bạn. Mặt khác, có rất nhiều sách, chẳng hạn như cuốn sách Bash của O'Rielly .


1
Thêm aproposinfovào danh sách. ;)
Julian

3
Tôi sẽ tránh sử dụng <>vì tất cả, vì những người cần hướng sử dụng mancó thể không biết nguy cơ chuyển hướng. Ví dụ: command <something> somethingelsesẽ tạo một somethingelsetệp trống (hoặc cắt một tệp hiện có!) Trong thư mục hiện tại. Đó là một thói quen xấu. Chỉ cần sử dụng man commandlà khá tự giải thích. Hoặc man __some__command__hoặc bất cứ điều gì an toàn.
Olivier Dulac

hmm, thực sự nó an toàn nếu đó <somethingkhông phải là một tệp hiện có, vì nếu không thì shell sẽ phàn nàn nó không tồn tại (rõ ràng là TRƯỚC KHI tạo tệp đầu ra) ... Tuy nhiên, thói quen xấu
Olivier Dulac

1
Điểm tốt. Chỉ sử dụng để viết tài liệu theo định dạng đó. (chỉnh sửa) Đã xóa chúng.
azz


13

Ubuntu được thiết kế rất thân thiện với người dùng. Học cách sử dụng thiết bị đầu cuối không phải là điều kiện tiên quyết để học cách sử dụng Ubuntu. Tuy nhiên, đó là nếu bạn muốn trở thành người sử dụng năng lượng hoặc tự khắc phục sự cố.

Để trả lời câu hỏi của bạn, tôi không biết bất kỳ trò chơi nào được thiết kế để trợ giúp hoặc dạy các lệnh shell, nhưng tôi rất khuyến nghị các tài nguyên sau bash và quản trị hệ thống liên quan:

Xin lưu ý rằng hướng dẫn này sử dụng Red Hat (một bản phân phối Linux khác) và tham khảo một số thư mục chỉ áp dụng cho sinh viên Đại học Surrey.

Được lưu trữ tại Dự án Tài liệu Linux ( http://www.tldp.org/ ), tác giả Mike G

Một wikibook từ Wikipedia

Hướng dẫn tham khảo GNU Bash

Hướng dẫn Bash-Scripting nâng cao ( http://linux.die.net/ ), tác giả Mendel Cooper


8

Bạn đã có hàng tấn trò chơi trên http://overthewire.org . Đơn giản nhất là Bandit, "nhắm đến người mới bắt đầu tuyệt đối".


Liên kết tuyệt vời. Có vẻ như có rất nhiều chiến tranh trong đó. Banditdường như là trò chơi cho những người mới bắt đầu tuyệt đối như tôi.
Sundeep

5

Có một trò chơi để học các lệnh VIM tại http://vim-adventures.com/ mà tôi khuyên dùng. Tôi nhận được những người học việc để chơi nó vào ngày đầu tiên của họ :-)


2

Công cụ Memawn có phần dòng lệnh unix và linux. Đó là một công cụ tuyệt vời để học bất cứ điều gì theo cách thẻ đục lỗ.


Đó không phải là chính xác những gì tôi đã nghĩ nhưng có vẻ như là một tài nguyên học tập tuyệt vời mà tôi sẽ sử dụng. Cám ơn!
Chủ nghĩa tư bản ngăn chặn

Ngoài ra còn có khóa học ShellFu . Mặc dù Memawn không phải là một trò chơi, tôi vẫn thấy nó rất hấp dẫn và nó chơi theo bản chất cạnh tranh của bạn.
ThomasH

Tôi vừa nhận được một trang quảng cáo từ memawn.com :(
Paddy Landau


1

Có trò chơi Uplink . Nó khá thú vị và có nhiều điểm tương đồng khá tốt với shell linux. Nhưng nó cũng có lệnh riêng của nó.


1
Trong khi Uplink là một trò chơi tuyệt vời, đó là dòng lệnh được giới hạn cd, dir, deletereboot. Khá chưa đủ. Tôi nhớ có một trò chơi hacker khác, nơi bạn thực sự phải viết kịch bản shell, nhưng tôi quên tên. Có lẽ một cái gì đó sáng tạo như "tin tặc"
Tobias Kienzler

1

Công cụ tốt nhất tôi tìm thấy để ghi nhớ và học tập lâu dài là Anki

http://www.ankisrs.net/

Tôi sử dụng thẻ tạo trong Anki yêu cầu tôi nhập câu trả lời, thay vì chỉ đơn giản là thẻ flash. Nó xây dựng bộ nhớ cơ bắp. Ngoài ra, tôi thực hiện 15 phút luyện tập mỗi sáng và Anki sẽ sắp xếp các thẻ của tôi dựa trên những thẻ tôi cần xem lại.


Nghe có vẻ là một công cụ tốt , nhưng nó cũng cung cấp dữ liệu huấn luyện cho các lệnh đầu cuối?
gertvdijk

0

Trong những ngày đầu UNIX (v6 và v7) (có trước Linux), có một loạt các hướng dẫn rất đơn giản theo lệnh được gọi learn. Tôi phải thừa nhận, tôi đã bắt đầu đào tạo của mình ở đó .. nó có hướng dẫn về dòng lệnh, vi và một chút về lập trình C. Nó đã biến mất từ ​​lâu. Và tất nhiên, điều này là trước sự phổ biến của các cuốn sách về chủ đề này, số lượng lớn kết nối internet dễ dàng, về cơ bản tất cả những gì bạn có về cơ bản là các mantrang.

Vì vậy, bây giờ nó khá dễ dàng, về cơ bản hãy vào Google, hoặc tìm một số tài liệu được đăng. Hoặc sử dụng amazon để tìm một cuốn sách thích hợp. Amazon thậm chí có xếp hạng và đánh giá về sách của họ.


0

Chà, hầu hết những điều cơ bản tôi học được khi Linux vẫn chủ yếu dựa trên dòng lệnh và SUSE là một trong số ít Linux có cài đặt dựa trên GUI. Tôi đã chơi xung quanh với Gentoo những lần này ... chỉ cần cài đặt hệ thống của bạn với một số công cụ như cảm biến chiều và các công cụ, chẳng mấy chốc bạn sẽ quay lại thiết bị đầu cuối để tìm cấu hình

Tôi không biết liệu vẫn còn một bản phân phối được cài đặt thông qua dòng lệnh hay không, vì tôi đã ngừng làm việc với Linux cho đến một tháng trước, khi tôi phát hiện ra cuối cùng họ đã thực hiện bước để có được dựa trên GUI và thú vị cho Người dùng, thật tuyệt cảm ơn tất cả các lập trình viên ngoài kia, điều đó đã làm cho rất nhiều PC cũ của tôi trở nên hữu ích một lần nữa !!!

MS ngu ngốc chỉ đơn giản là quá ngu ngốc để duy trì sản phẩm tốt nhất của họ nữa ... Windows XP ... một công ty làm điều đó, chắc chắn không xem xét để có một hệ điều hành hoàn toàn ổn định và an toàn ... và trong trường hợp Win 7 họ có thể có nó rất ổn định và an toàn, nhưng nó cần nhiều nguồn lực để làm như vậy.

Thực sự yêu thích cách Linux kiểm soát phần cứng mà không cần trình biên dịch hoặc trình thông dịch lớn hoặc các nội dung khác, như trên Windows.

Nhưng nếu bạn muốn tìm hiểu thêm về Linux, Gentoo là một cách tuyệt vời để xây dựng hệ thống của riêng bạn, từng bước và cũng tìm hiểu cách Linux hoạt động. Gentoo cũng có thể chạy trên hầu hết mọi thứ, cho dù tài nguyên phần cứng nhỏ đến mức nào, vì vậy bạn có thể sử dụng một PC khác, cũ hơn cho các bản Linux này, kiểm tra cài đặt, thời gian vui vẻ!


0

Không chính xác là một trò chơi, nhưng có trang web này , nơi bạn có thể tìm hiểu một số lệnh khác nhau.



0

Không phải là một trò chơi, nhưng rất hữu ích khi bạn muốn tìm hiểu một số lệnh và không có sẵn linux: rextester


0

Ma trận cho khối trò chơi là nơi tôi học được khá nhiều (so với kiến ​​thức trước 13 tuổi của tôi) một chút về thiết bị đầu cuối UNIX. Có một trò chơi nhỏ trong đó bạn "hack" theo cách của bạn vào ma trận để thả súng ra để lấy sau khi bạn chơi cấp độ đó. Trên thực tế thanh xa một trong những tính năng yêu thích của tôi của bất kỳ trò chơi nào.


0

inx (không phải X) có thể được sử dụng như cd trực tiếp và dạy các thiết bị đầu cuối theo cách tương tác và vui vẻ


0

Tôi đoán tên cướp là một trong những người giỏi nhất để tìm hiểu và hiểu thêm về các lệnh Linux và biết thêm về linux cho người mới bắt đầu. Bạn có thể nhận được liên kết từ đây

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.