nartimus,

@LynnTheChaoticWitch you could try some games to help you learn if you like gamified methods.

https://devopschops.com/blog/games-for-learning-linux/

bzImage,

When i first started woking at a Unix maker… my task for my first 2 months was to know and document every file in /etc, /usr/bin/ and /bin…

After that month, my mentor ask me …

what /usr/bin/ldd does ? and show me an example.

BendyLemmy,

This is a bit of a pointless question. Also, not quite making sense… because ‘workflow’ can mean absolutely anything.

I enjoy using Dolphin (KDE) because I have a terminal window at the bottom (F4 toggles it) which is tied to the GUI - so if I do ‘zi’ to jump to one of my video, or document folders, then the GUI follows… best of both worlds… and it means I can manage almost as well without the GUI, though not quite so well without the terminal.

You should aim to do things the most efficient way, without predetermined ideas about whether to use GUI or terminal. I use terminal to listen to radio, but not to edit pictures or videos.

When you get to your desktop, certainly start with a terminal open… I like Kitty - easy tabbing and splitting means I can do tons of stuff in the one window.

You learn by using, researching, and learning. That’s how you can get better. You can also do a lot by trying different shells - for example, I run Konsole (with ZSH) and Kitty with FISH - so they’re quite different to use, and each has benefits.

kool_newt,

I recommend making a project for yourself, maybe start out with a trivial script, and move on to something with control structures (e.g. if this then that) and variables, and tests, e.g. VALUE=8; [[ 8 -eq $VALUE ]] && echo 'they are equal'.

qjkxbmwvz,

First thing I'd do is ditch the GUI file manager: get comfortable with cd, ls, mv, rm, etc.

After that, maybe start with basic text manipulation, like grep, awk, sort, uniq, etc. This ties in nicely with IO redirection, which is essential for a "CLI based workflow." Get comfortable with pipes and file redirection, it's extremely powerful!

Writing shell scripts is another super useful exercise: any time you find yourself running the same set of commands multiple times, think about making it a shell script. You may end up with some really useful little custom tools that way.

nyan,

Switch to Gentoo. Either your command-line abilities will improve, or you will run screaming into the night before you manage to get X (or Wayland) up and running. 😜

kool_newt,

Trial by fire!

Prymu,

The rest of the comments are very good, but I'd recommend trying to administer a server and only connect to it via ssh. It will force you to learn cli as there will be no gui

dart,

Learn to like not having to use your mouse. Only use your mouse as a last resort. One strength of CLI is almost never having to move your hands off of the homerow. Fuzzy finding is your friend.

For example:

  • Instead of using a desktop app like GNOME, where you click on stuff to open them on a visual desktop -> Use a window manager like i3. In i3 configs, set a keyboard shortcut to fuzzy find your installed applications and open them. Now, your process for opening Firefox goes from clicking on a desktop icon or scrolling through menus, to pressing a keyboard shortcut and typing in the first few characters of Firefox and pressing enter. Desktops are bloat, you can get all of the functionality of a desktop with just the i3 rust status bar extension and CLI.
  • Instead of typing out and remembering long CLI commands with a bunch of flags, use fzf to fuzzy find through your bash history. Fzf uses Ctrl-R for this, and it makes CLI interfaces much faster to navigate once you've already used those commands. It also makes searching files and navigating directories in CLI faster.
  • Mac and Windows lack keyboard shortcuts to fully manage the layout of things on your screen. I know they have some shortcuts, but they can't do everything without a mouse. Once again, I recommend a tiling window manager like i3 for moving tiles around, resizing, etc, all from the keyboard.
  • Learn vim or similar text editors which not only use the keyboard for typing characters, but also for navigating and editing text. Instead of moving your mouse to the end character of a long word you want to delete and hitting the backspace key 20 times -> In vim, type '/' and the first few characters of the word, press enter, and type 'dw' to delete the entire word. Vim mode is also available in bash and a bunch of extensions for other apps, you just have to configure them.
bledley,

Use it everyday and you just pick things up over time, you don't need to know everything. Make your terminal pretty colours. Fetishize about keyboards and the simplicity of plain text.

bionicjoey,

Linuxcommand.org is a great start

mim,

Lots of people are suggesting using TUI applications.

While I don't disagree that will make you more comfortable spending time in the terminal, you're not really getting better at the command line (CLI).

I recommend you learn the basics of how the shell works. This is a good resource: https://effective-shell.com/

user_disagreement,

I recommend replacing GUI apps that you use one by one with CLI apps, I started by changing my file manager to ranger. Don’t rush or you may get overwhelmed and don’t interrupt your workflow too much. Next I started using media players, video editors, and even steamcmd to launch games, try to find a replacement for GUI apps searching online. This list is a good place to start;

https://github.com/agarrharr/awesome-cli-apps

Presi300,
@Presi300@lemmy.world avatar

Just... Use it more, really the only way to get better at something is to do it more.

tom42,
tom42 avatar

My biggest suggestion is to use cli tools, read man pages, start with man man, install info pages and use a tool like tldr.

Like everything else one wants to learn, the best ist to practice and learn through finding better solution for own made failures.

Cyfress,

Focus maybe on some CLI tools, like text editor. I use Vim, it was pain to learn but been worth it, since you don't have to leave the keyboard for anything. Once you learn the layout you can use it in other IDEs that also, many have plugins or built in support for Vim layout (JetBrains IDEs do) so I can use the same key map in desktop apps to do C# and C++, etc..
Also use Vim Mode that mode in the https://obsidian.md/. Which is great since you can also use Vim in the CLI to edit the Markdown Files.
Good Vim Cheat Sheet, bit confusing but as you get use to VIM it makes more sense.
http://materials.ucsd.edu/doc/vim_cheat_sheet_for_programmers_screen.pdf

Also this book is pretty handy, the 3rd edition dropped GUI apps and focuses 100% on CLI.
https://linuxpocketguide.com/
Handy if you have a Steam Deck also.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • linux@lemmy.ml
  • GTA5RPClips
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • Durango
  • cubers
  • Youngstown
  • mdbf
  • slotface
  • rosin
  • ngwrru68w68
  • kavyap
  • tacticalgear
  • ethstaker
  • JUstTest
  • InstantRegret
  • Leos
  • normalnudes
  • everett
  • khanakhh
  • osvaldo12
  • cisconetworking
  • modclub
  • anitta
  • tester
  • megavids
  • provamag3
  • lostlight
  • All magazines