running (text chopping) utilities in the shell, or scripting in the shell, is pretty powerful, and consistently implemented, so you can easily pass output from one thing to another. done very well.
This is a really good overview of *nix shells and history. The term shell is very appropriate. If you think of a shellfish it's a surface surrounding the meat. The meat being the kernel, daemons, and programs. This is harder to visualize if you are in a gui with a virtual terminal like he's showing here. So the shell lets an operator interact with the core OS in real time, accepts input, shows output. I think of the kernel as a dark blob and the console shell environment as a transparent wrapper around it that lets you talk to the core system.
What else might be hidden inside our computers what people dont know😆Great information thanks.I need to investigate my cross platform shell immediatly.
Love your work. could you do a video on Window Powershell and its reasons for being made. Cause I'm not exactly sure of what they are other then creating a more user friendly scripting system over Visual Basic script. And my big question. Why has it not fully superseded cmd?
One difference is that cmd can handle spaces in symlinks while pwsh can not (as of now and i do not know if they plan do add that). On my windows gaming drive i wanted to symlink the "saved games" folder into my onedrive folder (cloudsaves for games that do not support it is kinda nice) but it threw an error so i had to use cmd (can be invoked in pwsh). Maybe some other things need the ability to use spaces in a path as well.
Thanks! Please can you talk us about top 10 systemD free distros ? Maybe try adelie, obarun, chimera linux and super boxon to tell us what you think ? Thanks!
I was just remembering the Amiga OS came with shells and I am assuming today each shell is a running process. Back then could it have made sense to use one interpreter operating on more than one set of status memory structures?
The first gen UNIX ran on a DEC 7 which had a total of 8Kb of RAM, 4Kb was the kernel and the other 4Kb was for apps, it just didnt have the memory to do it, today however it would be possible to do that, but then running a native app would still be faster...
You had busybox and toybox in that chart, but I'm confused. I didn't think those were shells, I thought those were alternatives to the GNU coreutils and that they took inputs from a shell such as bash or zsh, etc.
Hi @little-wytch, a shell is just a program like any other, the difference is a shell is designed to accept input from the user and perform whatever command the user wants. Busybox and Toybox and larger shells which include what had previously been standalone system utilities. They were created mostly for embedded devices with limited storage and memory. So that only one app (busybox or toybox) would be running...Any application can be a shell, there is nothing special about them.
@@CyberGizmo Thanks for clarifying. It makes sense the way you explained it. I had this weird way of thinking of shells where the user was a composer, the keyboard was the sheet music, the coreutils were the orchestra, and the shell was the conductor that passed the sheet music instructions to the proper instruments lol. I'm happy to drop that way of thinking from my mindset because I'm really not a music person lol.
Really enjoyed that, thanks. It's always good to know a bit of history about these things we're working with today. One thing which bugs me is this change to zsh as default. Mint have done it and so have Manjaro. Half the commands I enter don't work as expected. I wonder what the reasons are for this? .. if it's just for thinks like the prompt colours etc., this can be done easily enough in BASH too, by altering a line in ~/.bashrc. Like this example: PS1='\[\033[01;32m\][\[\033[01;34m\]\u\[\033[01;32m\]@\[\033[01;35m\]\h\[\033[01;37m\] \W\[\033[01;32m\]]\[\033[01;35m\] $\[\033[00m\] '
the terminal is a text i/o environment. the terminal window, also known as a terminal emulator, is a text-only window that emulates a console in a gui shell stands for the command-line interpreter (cli). the shell is a program that processes and interprets kernel commands and outputs the results to the user
@@CyberGizmo yup. same guy. mr gupta was the techi in james bond - tomorrow never dies. his line was "i used a 32bit ssl ..." and gets cut off by jonathan pryce with "spare me the technobabble mr gupta". will check out heist tonight.