this post was submitted on 24 Jun 2023
55 points (100.0% liked)

Linux

48330 readers
595 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

I have some basic experience but I wanna be proficient and have a cli based workflow; I’m currently on Arch with GNOME

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 23 points 1 year ago (1 children)

Just start doing things using it and lookup how to do things you don't know. Enough time and you'll be good at it.

[–] [email protected] 4 points 1 year ago (5 children)

So there is no like FOSS course on how to be cli proficient

[–] [email protected] 6 points 1 year ago

The answer is that it depends what you're doing. You can have an extremely efficient dev env CLI. You can kinda brows the web cli. You probably don't want to edit videos and pictures in the CLI.

Because a lot of foss has replaceable building blocks, you're not going to find a 'this is how you do things course'. You're much more likely to find, 'this is how you use a certain text editor in the CLI'.

So, first, I guess, figure out or articulate what you want to do in the CLI. From reading and sending mail to writing code and building a dev environment to just basic scripting to maintain your install.

After that step, you'll want to try a couple of the building blocks that do that.

Once you find one that kinda clicks, then you can go become proficient and start to put together the pieces of your workflow.

I run arch/Ubuntu and gnome. I spend about 50-70% of my time every day in a terminal. I spend the rest in a browser. Sometimes I use files, libre office calc, gimp or the calculator app, but even combined their usage is probably a rounding error.

I run gnome term (used to do a lot of urxvt but gnome term seems to work fine these days)

From there, I start tmux. Inside of tmux, I run a few windows. One has email, a couple shells, chat and system monitoring.

The next window has my core dev env, I run nvim with a server so I can upen tabs in nvim from different terminals, in nvim I run the lsp servers for linting and code completion. I use ranger as a file browser/previewer and that's hooked to nvim so when I select a file there it will open as a tab in nvim, additionally I can run that file in the debug pane in the bottom of the window.

Then I just have windows that I drop into to do additional tasks, ops work on multiple servers at once, a second dev env to make a quick change in a different package, or a new window to scrape up a one line script to parse a log file or data dump for processing else where.

All of this takes time, for me about 15 years probably to say 'ok, I want(need) to do this thing in the terminal, now what's the best way to get that done . . .'

And then, you just kinda build it.

[–] [email protected] 5 points 1 year ago* (last edited 1 year ago)

Linux Journey is a good one for the basics. But I would agree with the other commentors here, and say the best thing you can do for yourself is to just use it day to day.

I once heard something about learning other languages. Your brain has two methods of learning, one is the academic, and another is practical. When you learn something purely academic, your brain isn't prioritizing it as much, but if you're doing it daily, and you need to be able to do it, then your brain goes "oh man, I better pick this up quick" and starts kicking more of your subconscious power into learning it. I think using the command line is going to be a similar deal.

[–] [email protected] 5 points 1 year ago

"cli proficient" depends entirely on what you are doing, other than extremely basic stuff like learning how to use coreutils, really you just gotta try and use it whenever you can to get used to it.

[–] [email protected] 1 points 1 year ago

There are a ton of them.