13

I think it would really enjoy a guided tour of either just the typical Linux filesystem (which I realize varies from system to system), or a guided tour of the filesystem and common console productivity patterns and everything else!

Imagine you're a newbie to gnu Linux and you're sitting at a console and you type

guided-tour

Then just like the interactive REPL-aided programming tutorials that are showing up on more and more home pages for new languages and frameworks, you would be guided through the filesystem, what goes where, and common console tasks. For example the following fictional session snippet:

#Please cd to /tmp
$ cd /tmp
#This is a place to store stuff that is just for currently running programs, using the handy filesystem. Now try creating a file here. 
$ nano myfile
....etc...

Does anything remotely similar to this already exist, and do you see the appeal?

αғsнιη
  • 41,407
themirror
  • 6,988
  • 2
    Hmm, I think there's two forms of this. The "linux newbie" guide where you learn 'cd' and the absolute basics, those guides exist already (interactivity isn't all that!). The real power of linux is piecing lots of bits together tho, by themselves grep and cut aren't overly interesting tools but combined they make quite a powerful toolkit. It's like a programming language (say Java), the pieces - 'if' 'functions' 'variables' - the core pieces - aren't very interesting. Ultimately its the API (unix tools) and how you string it together that makes it powerful. And that's teaching programming – iain Oct 11 '13 at 17:00
  • May be we can program this . – Kartik Oct 16 '13 at 02:14
  • I personally think this is a good idea. I have had to introduce a lot of people to linux, and the turnover point which prevents people from actually moving is knowledge and comfort level of the terminal. I personally haven't found any good basic introductory tutorials or videos for this. – Munim Oct 18 '13 at 05:55

2 Answers2

9

man & info

This is too complicated to pull off, IMO. I get your idea but I've been working with Linux/Unix for the better part of 30+ years and continue to learn things every day that leave me wondering how I hadn't learned this bit yet.

I will leave you with this though. Most of the help that one requires on Linux/Unix is already contained within the system. The man pages and info pages are pretty much the owners manual to your system.

These commands will get you started:

$ man man

$ man -a intro

$ man -k <some topic>

$ man <command>

$ info <command>

Most people don't realize that you can learn about how the man pages are organized through the use of man. Try man man to gain more insight into how they're laid out.

MANUAL SECTIONS
       The standard sections of the manual include:

       1      User Commands
       2      System Calls
       3      C Library Functions
       4      Devices and Special Files
       5      File Formats and Conventions
       6      Games et. Al.
       7      Miscellanea
       8      System Administration tools and Daemons

So if you have questions about commands, focus on the man pages in section 1. If you have questions about the file format conventions, look to section 5.

$ man -S ls

Koans

I kind of backed into Koans through Ruby where I first learned about them. They are snippets of a problem that teach you a concept in X.

excerpt from wikipedia

A kōan (公案?)/ˈkoʊ.ɑːn/; Chinese: 公案; pinyin: gōng'àn; Korean: 공안 (kong'an); Vietnamese: công án) is a story, dialogue, question, or statement, which is used in Zen-practice to provoke the "great doubt", and test a student's progress in Zen practice.

In my case it was with the programming language Ruby, but Unix also has them.

The ones that I'm most familiar with for Unix are the ones known as Rootless Root. Poking around that site you'll likely find these koans titled: The Unix Power Classic: A book about the Unix Way and its power. If you want to gain an understanding for Unix I suggest you read them.

Application docs

You can often find documentation on the various software installed on a Linux system under this directory, /usr/share/doc. This is at least the case on Red Hat systems, not sure about other distros. You can browse this info using a terminal browser or a web browser like so:

$ lynx file:///usr/share/doc
Jeff Schaller
  • 67,283
  • 35
  • 116
  • 255
slm
  • 369,824
  • 2
    As an occasional linux user who became a regular user over time I can say that help and man almost NEVER help you learn (Unless you know exactally what you are looking for, and often not even then). More often than not you end up not finding what you want and when you do find it it's often a system call (but since you are learning you don't notice that)--on top of that there is no purpose-based index and.. well I guess it's usable for some purposes but absolutely not what the questioner asked. – Bill K Oct 11 '13 at 19:07
  • @BillK - this is how I learned Unix. I guess it's different strokes for different folks, but if you asked most of the people here that have learned Unix, the man pages is where you can learn how to do things if you take the time to read them. With the advent of the internet those docs + searching will answer any question you can conceive! If you type man man you can learn how the man pages are actually organized so you can avoid the system call ones! – slm Oct 11 '13 at 19:10
  • More often than not thigns are not in the man pages, when they are they don't tell you how to solve a problem, just how to execute a command. I was never able to find info about things like Piping and processes or usefully combining calls. It's totally usable once you have a clue, but not at all useful for getting a clue. a walkthrough that showed you what to ask for help on would be a good start. (And I think that's what the OQ was asking for) – Bill K Oct 11 '13 at 19:15
  • @BillK - I agree that getting started, they are a deep dive at times, and won't help you if you're a complete noob, but as i said in my 1st sentence, it would be "...too complicated to pull off..". Think about all the variability between the different distros, then you have Solaris, BSD, AIX, etc. There is a wealth of tutorials and guides to how to get started on the internet that already fill this void. I would advice anyone to search for "their distro + tutorial" and you'll find enough info to satisfy the gap of b/w "noob" to I know what ls does. – slm Oct 11 '13 at 19:35
  • A agree that it would be tough to pull off, was just saying that man doesn't do a good job either, it would be better to go with a tutorial (or many tutorials). I suppose you could pull off a bare basic bash tutorial as the OQ suggested though without many problems. – Bill K Oct 11 '13 at 22:45
  • Mixed feelings about this answer. Man pages aren't all that helpful, specially for new users. Koans however are a nice way to teach people a new system. – nikhil Oct 18 '13 at 23:02
  • @nikhil - what else could I do to improve this answer? I've used Unix for 26+ years and these are the most common methods I've seen employed in getting myself and others up to speed. – slm Oct 18 '13 at 23:05
0

I have good solution for you:

Hacking GNU/Linux:

  1. changing between directorires and reading configuration files.
  2. reading man pages, Also reading man pages of See Also sesction in man pages.
  3. running some commands with --help argumnt.
  4. tarcking some of link.

However above list is very long, but you should start from a documentation, i suggesst you :Linux tutorial , when you see a command in tutorial read its man page.

PersianGulf
  • 10,850