UNIX and Linux Shells

UNIX and Linux Shells

DJ Ware

1 год назад

8,923 Просмотров

Ссылки и html тэги не поддерживаются


Комментарии:

@CRYPTiCEXiLE
@CRYPTiCEXiLE - 12.01.2023 16:58

Great video!

Ответить
@Chris-op7yt
@Chris-op7yt - 12.01.2023 17:14

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.

Ответить
@DrZingo_
@DrZingo_ - 12.01.2023 17:38

Interesting video. I've been using dash lately, which meant I had to rewrite a bunch of scripts. The thing I miss most from bash is 'here' redirects.

Ответить
@rashie
@rashie - 12.01.2023 17:41

👍👍

Ответить
@bob_mosavo
@bob_mosavo - 12.01.2023 18:06

If you hold the Unix shell to your ear, you can hear the C 😉

Ответить
@MithunKalan
@MithunKalan - 12.01.2023 18:25

is ricky jay mr gupta?

Ответить
@RHTORAS
@RHTORAS - 12.01.2023 19:50

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!

Ответить
@ChrisPinCornwall
@ChrisPinCornwall - 12.01.2023 20:04

Don, thanks for all that you do...I wish you lived down the road so we could talk about systems old and new!

Ответить
@whtiequillBj
@whtiequillBj - 12.01.2023 20:53

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?

Ответить
@guilherme5094
@guilherme5094 - 12.01.2023 20:57

Another great video, as always thanks DJ👍

Ответить
@abobader
@abobader - 12.01.2023 23:46

Excellent one DJ, well done! I really did not know like 90% from the history of shell, thanks for this great info.

Ответить
@MatthewSuffidy
@MatthewSuffidy - 13.01.2023 03:15

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?

Ответить
@deBug67
@deBug67 - 13.01.2023 03:27

I really enjoy your historical knowledge in to all aspect of computing and Unix and you mange to present it in such a structured way. Great job!

Ответить
@JohnnieWalkerGreen
@JohnnieWalkerGreen - 13.01.2023 05:46

myRule() {
if < 25 lines ; then bash, awk, sed, grep
else python; fi
}

Ответить
@lilith1504
@lilith1504 - 13.01.2023 05:56

I'm using exotic Fish shell

Ответить
@realpainediaz7473
@realpainediaz7473 - 13.01.2023 06:39

No more slides while talking?

Ответить
@QueeeeenZ
@QueeeeenZ - 13.01.2023 20:57

What is the difference between a terminal and a shell?

Ответить
@rodricbr
@rodricbr - 14.01.2023 00:28

awesome, man. thanks for the knowledge

Ответить
@yogurtColombiano
@yogurtColombiano - 14.01.2023 12:48

I am a new comer to this channel, it's a great luck to discover your channel! Thanks for sharing your knowledge with us around the world :)

Ответить
@CTimmerman
@CTimmerman - 16.01.2023 03:50

My current favorite is Zsh, but i hear Fish is also great.

Ответить
@nightcoder5k
@nightcoder5k - 16.01.2023 10:13

I started with Bourne shell (sh) on SunOS, then csh, then tcsh. Nowadays, I either use bash or zsh. With Oh-My-Zsh, zsh is quite fun to use.

Ответить
@digitalcontent1870
@digitalcontent1870 - 17.01.2023 09:27

What else might be hidden inside our computers what people dont know😆Great information thanks.I need to investigate my cross platform shell immediatly.

Ответить
@BG101UK
@BG101UK - 18.01.2023 17:48

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\] '

Ответить
@arlaxia
@arlaxia - 18.01.2023 19:36

This video was great! I love learning about the history of Unix. It's nice to know where all these things I use on the daily come from.

Ответить
@willemvdk4886
@willemvdk4886 - 19.01.2023 01:55

Great talk. You do know, though, that you're mentioning Linux a few times when obviously talking about Multics and UNIX?

Ответить
@eugrus
@eugrus - 20.01.2023 21:15

How do you like PowerShell and the idea of an object oriented shell in general?

Ответить
@scottdrake5159
@scottdrake5159 - 23.01.2023 00:37

Your videos really are excellent. They've become the top video I reach for to share history. Thank you for releasing these.

Ответить
@tsiiphsycoii
@tsiiphsycoii - 31.01.2023 03:24

So a shell is a bad lisp machine 😎

Ответить
@amontesi
@amontesi - 05.02.2023 12:49

Wow! Throwback to the Korn shell days, pre-linux era, and reasons why to stay away from zsh, csh and tcsh

Ответить
@DonThorntonJr
@DonThorntonJr - 11.02.2023 01:13

you said 3B2... I have a crap ton of software and QIC tapes from my time programming the 3B2 (600G/1000)

Ответить
@dixztube
@dixztube - 15.02.2023 12:08

👁️ ❤🐠

Ответить
@little-wytch
@little-wytch - 09.05.2023 09:20

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.

Ответить
@Kivencito
@Kivencito - 21.05.2023 07:23

I love your content!

Ответить
@jeffbrownstain
@jeffbrownstain - 24.09.2023 22:22

Advertise these as 'computing history' videos and they'll do better with the algorithm.
This is great content buried by not playing the game.

Ответить
@RobBCactive
@RobBCactive - 12.11.2023 20:41

I was thinking "WTF!!" as I used UNIX version 6 at Uni and had a functioning shell which had | and filters. But the shell didn't have the Bourne Algolisms like if .. fi and case .. esac, or setting environment variables on a command line (PATH=/foo/bin:/bin:/use/bin). PATH was a shell variable setting, it allowed typing a.out rather than ./a out. Bourne describes the joint choice to add **envp as a third parameter to main() to allow passing of variables to child processes as a close one, because it allowed breaking of sub-processes.
The fact is in the Bell Labs UNIX group and academic sites, the V6 source was there and programmers could add features. If you touched the code though you then owned the utility. So between releases there were incremental local improvements, the large releases required publishing updated documentation.
PWB was a fork which V7 later re-unified merging features including fixes developed by universities. There were other lesser known forks adding carrier oriented features like shared memory and semaphores, that became important selling points for commercial System III & V. Similarly Bell Labs took in BSD code for sockets and TCP/IP which undermined the legal attempt to shutdown BSD, which had re-implemented a complete UNIX system.
There's a video around which I saw recently where I think Bourne describes getting McIlroy's pipes into the shell, added quickly by Ken as the meat of the system call was in place. That made filters possible, requiring changes to utilities, and enabled Ken's hacks to ed(1) to create grep(1) and sed(1). I can imagine Bourne's radical shell rewrite was held back till V7 for compatibility reasons.
The ACM paper mentioned pipes, fork and the byte oriented buffered i/o, which stirred Comp. Sci. interest. It was part of the point of using UNIX academically to experience composing programs aided by tools.
One program I missed from PWB was make(1), we had to invoke cc(1), lex(1), yacc(1) and ar(1) by hand. I knew about make & Bourne shell from The UNIX Programming Environment book and Software Tools in Pascal which was in the library. My first make(1) use was frustrating as on the Apollo workstation at my first full time job it replaced TAB with spaces by default. You needed to carefully copy lines with the TAB or receive a cryptic error message.
In my final year, cc(1) was upgraded to support K&R allowing function parameters to be declared between the parentheses, rather than the older style. Upgrading the whole OS was likely unthinkable as far too risky and too much trouble, so we had what we had, not what was in the literature.

Ответить
@knoxduder
@knoxduder - 31.03.2024 19:26

Great work man.

Ответить
@noname-ll2vk
@noname-ll2vk - 29.05.2024 20:47

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.

Ответить