My daughter was advised/encouraged by their teacher to take a Linux (sic) command line course.

She was enjoying it until she unexpectedly hit a paywall at chapter 4 (of 6).

Can you recommend a free as in freedom GNU/Linux command-line course or tutorial?

#askfedi #dtv

@janneke exercism.org might have something?
Bash on Exercism

Get fluent in Bash by solving 95 exercises. And then level up with mentoring from our world-class team.

Exercism

@janneke
One of us! One of us! One of us!

I don't have a tried course, still I could try to throw an exercise or two from my experience, depending on the last/next lessons.

@js @janneke

"Most computer users today are familiar only with the graphical user interface (GUI) and have been taught by vendors and pundits that the
command line interface (CLI) is a terrifying thing of the past. This is unfortunate because a good command line interface is a marvelously expressive way of communicating with a computer in much the same way the written
word is for human beings."
❤️🥲

@janneke I remember using linuxcommand.org when I was getting into it - it is an introduction related to a book, which is also available.
@janneke Over The Wire's "War Games" is very hands on. Although it doesn't provide clean, prepped lessons, it does link to pages to study the material related to the exercise:
https://overthewire.org/wargames
OverTheWire: Wargames

@janneke I liked this one from Dave Kerr. A lot of titles from No Starch Press are free to read online. https://effective-shell.com/introduction/
Introduction | Effective Shell

I've been lucky enough to spend many years working as a software engineer, and I've worked with data scientists, data engineers, site reliability engineers, and technologists of all sorts. One trait that stands out in great technologists is their ability to make their tools work for them by stitching the tools together in creative ways to suit their unique styles and needs. This book will help you do just that by using the shell.

@janneke I liked https://swcarpentry.github.io/shell-novice/ (but not sure how approachable it is for younger people).
The Unix Shell: Summary and Setup

@janneke

Maybe the Internet Archive has copies of the remaining chapters?

@janneke I don't know if it is too basic or maybe a bit outdated, but I think the now 25-yeaer-old GeNUA-script is still very good.
de: https://depend.cs.uni-saarland.de/ProgI05/unix/dintro.pdf
en: https://www.math.ru.nl/~souvi/wisk_comp_04/unix_uitgebreid.pdf

@janneke The Linux Foundations LFS 101 is a well structured all in one training for free.

https://training.linuxfoundation.org/training/introduction-to-linux/

Introduction to Linux (LFS101) | Linux Foundation Education

Develop a good working knowledge of Linux using both the graphical interface and command line with this free introduction to Linux course.

Linux Foundation - Education

@janneke and if something do not work or need more info on a specific thing, she can try to add "arch-wiki" in her research.

Arch wiki is one of the most extensive documentation in all linux distro.

@janneke, I've recently become aware of the Introduction to the Command Line published by GNU Press.
Introduction to the Command Line | GNU Press Shop

@janneke I would second the recommendation for the Linux Foundation course.

Some folks learn via books, some via hands-on. The Linux Foundation course covers both aspects.

There's a lot of Linux (cmdline) not really "taught" in books - think easy things, like we put "from" on left and "to" on right in cmd structure. Fingers need to tickle the keyboard to absorb the clues and context around you.

@janneke I know of Command Challenge, but I thought its a little more advanced that absolute beginner. The source code is on Gitlab (which is suboptimal but better than Github I guess), and is MIT licensed.

@janneke Check out w3schools and Wikibooks.

@janneke

Some of the many books on the subject:

#books
#Linux
#CommandLine
#AltText

@appassionato @janneke
'The command line' is not a topic but just a specific way of interacting.

I guess it's the `bash` (bourne again shell) that is meant. The proper way of learning it is running linux (from a live image on a USB stick if you don't want to install it), to open a terminal ("the command line") and simply type `man bash` or `info bash`.

Also nearly all bigger distributions offer some kind of introduction on their webpage. Take the one of the live image/ distro that is used.

@appassionato @janneke
Actually, there is absolutely no need to buy a book to learn anything about linux. Everything is documented in detail, most of it already installed or easy to install (often declared as "doc"-package) on any linux system. Linux *is* learning.

@jues @appassionato @janneke

'man sh' will default to the shell you are actually running.

@janneke not a course per se, but https://social.jvns.ca/@b0rk has created a mindboggeling amount of awesome comics for almost all Linux concepts and commands. They are free here: https://wizardzines.com/comics/ And her collected issues are splendid as well.
Julia Evans (@[email protected])

7.6K Posts, 358 Following, 52K Followers · programming and exclamation marks I have DMs muted from people I don’t follow.

Mastodon
@janneke but I'm an alligator

@janneke

Can't go far wrong reading the manuals of the software she's trying to learn. Those are all available online for free. Example:

https://www.gnu.org/software/bash/manual/html_node/index.html

Top (Bash Reference Manual)

Top (Bash Reference Manual)

@janneke if her teacher suggested she do it then I'd ask the teacher for recommendations.

@DrHyde
That's the first thing she did.

They said: If you finish the course in three weeks, it's the best 28 Euros you ever spent.

They didn't seem to care about grasp the idea of freedom/free software.

"You just need to pass on a few beers this summer."

"I don't drink."

I really doubt if they even got the irony of free as in freedom, not as in beer.

@janneke free-as-in-speech software is about being able to do stuff with it, it's not about preventing others from offering paid services around the software, such as training materials.

Anyway, I don't have a basic course to recommend, but *after* learning the basics I very strongly recommend the "MIT Missing Semester" course. That does include an "introduction to the shell" but it only skims the surface. Really productive CLIing requires more than what's there. https://missing.csail.mit.edu/

The Missing Semester of Your CS Education

Master powerful tools that will make you a more productive computer scientist and programmer.

Missing Semester
@janneke someone in the Fediverse recommended https://missing.csail.mit.edu/2020/ and I found it quite nice and easy to follow! I can't find the original post, but the link should suffice.
2020 Lectures

Lecture notes and videos for Missing Semester, MIT IAP 2020.

Missing Semester

@janneke maybe this would help? https://www.w3schools.com/bash/index.php

haven't tried this one myself, but w3schools is usually pretty good and usually free, and bash is usually the default command line shell on linux distros

W3Schools.com

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

@janneke @guyjantic
I've probably learned more about shell scripting by passing my scripts through https://www.shellcheck.net/ than any other resource. Assuming the topics include scripting I recommend it.
ShellCheck – shell script analysis tool

ShellCheck finds bugs in your shell scripts

@janneke
@jschauma has a quadrillion hours of YouTube courses. I like them very much. I would guess there is some CLI too.