Тёмный

Lecture 1: Course Overview + The Shell (2020) 

Missing Semester
Подписаться 95 тыс.
Просмотров 712 тыс.
50% 1

You can find the lecture notes and exercises for this lecture at missing.csail.mit.edu/2020/co...
Help us caption & translate this video!
amara.org/v/C1Efe/

Наука

Опубликовано:

 

31 янв 2020

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 375   
@litchyarn
@litchyarn 3 года назад
6:04 shell prompt 6:32 curstermizing shell 7:03 $date 7:19 $echo 7:29 $echo hello 7:46 $echo "Hello world" 8:41 10:01 environment variable 10:17 $echo $PATH 11:01 $ which echo 12:30 relative path 12:50 $pwd (print working directory) 13:24 cd /home (change my directory) 13:58 dot 15:03 ../../../../../ 16:20 $ls 17:15 ~ tild 17:36 - dash $ cd - 20:09 d means directory 21:32 read, write, execute 24:32 mv (rename, move) 25:20 cp (copy from, to) 25:50 rm (remove) 26:15 rmdir, mkdir (remove directory, make directory) 26:50 man (manual) 27:55 Ctrl+L (clear shall) 28:30 input and output 29:30 $echo hello > hello.txt 29:59 $cat hello.txt 30:10 $cat < hello.txt 30:43 $cat < hello.txt > hello2.txt 31:15 $>>^C 31:50 pipe 32:20 tail $tail -nl $ls -l / | tail -nl $ls -l / | tail -nl > ls.txt 33:35 curl curl --head --silent google.com curl --head --silent google.com | grep -i content-length curl --head --silent google.com | grep -i content-length | cut --delimetr = ' ' -f2 36:39 $sudo (super user) 38:02 $cat brightness $sudo echo 500 > brightness
@skandamahesh9974
@skandamahesh9974 3 года назад
Jeong Rita thanks man really helps
@lucaban
@lucaban 3 года назад
this needs more upvotes!!!
@Mainmenify
@Mainmenify 3 года назад
Well done! this absolutely needs to be added to the video description to show timespamps on the video progress bar!!!
@DrHusseinAlOmari
@DrHusseinAlOmari 3 года назад
Thank you! Very useful!
@hingsli7245
@hingsli7245 3 года назад
good job man, very helpful!
@samdavepollard
@samdavepollard Год назад
i'm old; i graduated in 1979, way before the www was a thing the fact that i can hop onto youtube and drop into a class at MIT like this still blows my mind
@upstatenetworks4639
@upstatenetworks4639 8 месяцев назад
Similar. EE/CS 1980's We've passed files back and forth for decades. Our development projects now involve 10's of programmers. This lecture was well presented and gratefully received. Nice Job and Thank you!
@edvaned8207
@edvaned8207 Месяц назад
Similiar too. i graduated in 2004 😁
@ShivangiSingh-wc3gk
@ShivangiSingh-wc3gk 4 года назад
I feel so dumb at work sometimes. I had to learn these things the hard way, thank you for putting this out there.
@xBugzilla
@xBugzilla Год назад
But #! is a special comment, not telling the shell to run as root, right? I don’t get your comment or maybe I missed the part he explained shebang
@resulhangeldiyev4427
@resulhangeldiyev4427 4 года назад
thank you youtube algorithm for this magnificent content
@fedeac31
@fedeac31 2 года назад
I think we should rather thank MIT. They're quite probably the best tech university in the world, and they're publishing content for free that they could charge us a fortune to access if they wanted to.
@mrmusicdu74
@mrmusicdu74 3 года назад
Why is this in my recommandations and why am I starting to plan to watch the whole courses
@qwerty-wt5dr
@qwerty-wt5dr 3 года назад
+1 I even dont have Linux installed for years
@zounoaa9689
@zounoaa9689 3 года назад
same!
@aalbero
@aalbero 3 года назад
long live RU-vid recommendations
@sadeepthabandara8117
@sadeepthabandara8117 3 года назад
If you haven't already, go for it!
@overglobe
@overglobe 11 месяцев назад
😂
@Milbrown_Worker
@Milbrown_Worker 4 года назад
Im sad this kind of quality instruction is not commonplace across other post secondary institutions.. I guess it is MIT after all... Thanks for making this available
@yousifabdulhussein
@yousifabdulhussein 8 месяцев назад
This type of quality instruction isn’t even commonly available at MIT lol.
@Chr0nalis
@Chr0nalis 4 года назад
I've been writing "clear" instead of just ctrl+l all this time ..
@love.ly.
@love.ly. 4 года назад
Teymur Azayev same 😮
@wolfram77
@wolfram77 4 года назад
is there a shortcut to clear scrollback too?
@rabingaire
@rabingaire 4 года назад
same here
@aavocadoToast
@aavocadoToast 4 года назад
Same
4 года назад
The clear command and ctrl+l do not do the same thing. They are very similar, but sometimes it makes sense to use one or the other.
@yixe2253
@yixe2253 4 года назад
These lecture are amazing, thanks for releasing this to the public!
@ChristopherOkhravi
@ChristopherOkhravi 4 года назад
This.
@skarasif
@skarasif 3 года назад
@@ChristopherOkhravi lectures ;-)
@v1r47
@v1r47 3 года назад
@@skarasif lectures* :-)
@driden1987
@driden1987 3 года назад
@@ChristopherOkhravi are you planning on coming back to creating videos on YT? Really wanted to see how your VIM series would pan out. Thanks for everything
@terrence369
@terrence369 3 года назад
Very true
@loremipsum7513
@loremipsum7513 4 года назад
THIS IS WHAT WE ALL NEEDED. THANK YOU FROM THE BOTTOM OF MY HEART.
@middleverse3838
@middleverse3838 3 года назад
I'm like 15 minutes in, and I'm already thankful to you guys for making this!! For someone who used to be a programmer but left and is now making a comeback, this packs-a-punch.
@harshdeepsingh1026
@harshdeepsingh1026 4 года назад
How they teach and covers the topic is really helpful. I think they are doing great work to post these and their notes over internet for people to use. Regards to the authors.
@seonginna8804
@seonginna8804 4 года назад
This is a lecture series I have wanted. Thank you MIT!
@dhruvgupta8751
@dhruvgupta8751 3 года назад
the xdg-open in powershell was just: start worked with pdfs and .html files.
@infinite-journey
@infinite-journey 3 года назад
Lectures we didn't ask for but we all needed the most.
@alexandrechen3081
@alexandrechen3081 4 года назад
This is exactly what I need! Thank you MIT
@walkastray007
@walkastray007 3 года назад
I'm actually tearing up. I've been trying to learn how to do things and it's been super frustrating and EVERY SINGLE COURSE I have ever seen either teaches you what a variable is. Or has a "google is your best friend" sort of approach. Thank you so much for making these videos
@fedeac31
@fedeac31 2 года назад
This is awesome. You guys are awesome for sharing it publicly. Everything about this is awesome.
@shreyaskali996
@shreyaskali996 Год назад
great! MIT never ever dissapoints me. Hope this quality of education become a standard in the future in every country.
@mlcmingliang
@mlcmingliang 4 года назад
43:44 scroll lock is for you to scroll around in spreadsheet program like Excel with arrow keys. so when it is toggled, arrow keys scroll around instead of move the focus on a cell
@wolfram77
@wolfram77 4 года назад
that is also what ctrl+arrow keys do in a text editor. thanks for sharing.
@PainfullySubjective
@PainfullySubjective 5 месяцев назад
so glad i found this courses. thank you MIT and all who made this!
@bsko3D
@bsko3D 2 года назад
what a great and generous idea to publish these lectures for everyone. Thank you!
@tamat
@tamat 4 года назад
I cannot thank you enough for this course. Im also a teacher at the university and I never have the time to teach this concepts deeply to my students, so at least now I have a place to redirect them.
@advitiayanand5974
@advitiayanand5974 4 года назад
glad to hear there's teachers that still care.
@EndrChe
@EndrChe 3 года назад
This is the most beautiful thing I’ve ever found on RU-vid...
@majoragan
@majoragan 3 года назад
Just finished first lecture... Big thanks for this series!
@popluss
@popluss 3 года назад
wow, this is very good! the content is really nice and the way he teaches it and structure the lecture is way better than what i had in college
@sciberbee
@sciberbee 2 года назад
I came to think again, that we are living very hopeful period of time given that these fruitful and friendly lectures from MIT is ready to be watched free, at all around the world:)
@EarthB00
@EarthB00 4 года назад
These are super useful. Making my way through them.
@henryluo9380
@henryluo9380 3 года назад
Thanks for sharing it. It's really helpful to someone like me who have never learnt these basic things.
@casedup
@casedup 3 года назад
Great Great Great! Been using bash shell foryears and you opened me up to other worlds man. These videos are so 👍
@yanlin9130
@yanlin9130 4 года назад
Pretty good lecture, I wish it would be available when I was a freshman five years ago. Thanks for the hard work.
@mrbeats7434
@mrbeats7434 3 года назад
Very good. This teacher is first class. Thanks so much
@wizard7314
@wizard7314 3 года назад
41:30 it was worth watching for me, just for this. Great example of why 'cat' with shell piping isn't sufficient to write to a system file. But you also don't want to elevate the whole shell to root privileges because it's inconvenient (especially when scripting) and because then everything will be executed with root privileges. Now I understand why tee exists. Cheers.
@takreem.akhter
@takreem.akhter 3 года назад
Thank you youtube recommendations. This was beautiful! I am going to watch the whole course.
@StankyPickle1
@StankyPickle1 4 года назад
I wish this lecture series existed 6 years ago. Would've made life a little easier.
@user-ox9wq1gj5k
@user-ox9wq1gj5k 4 года назад
Amazing to look at it during quarantine. Thank you very much!
@meojunior
@meojunior 3 года назад
I really enjoy this course and learn a ton of foundation things. Thanks guys
@shelinesim1038
@shelinesim1038 4 года назад
"On Windows, who knows?" made me chuckle
@pedrofalcao1900
@pedrofalcao1900 3 года назад
Made me install linux
@ze_kel
@ze_kel 3 года назад
​@@pedrofalcao1900 try WSL it's super easy to setup and you get full linux terminal inside your windows.
@HendersonHarrisson
@HendersonHarrisson 3 года назад
WSL easy bash without switching OSes
@metroboomin8895
@metroboomin8895 2 года назад
tip: watch on 1.5 speed if it suits your fancy, i find it helps me focus (also great lecture!!)
@sriranganayakulu8513
@sriranganayakulu8513 3 года назад
Thanks MIT!! For these great lecture series
@koraytugay
@koraytugay 4 года назад
Starts at 4:08
@ivansakal1224
@ivansakal1224 4 года назад
cheers man
@Hilaire_Balrog
@Hilaire_Balrog 3 года назад
Thanks. Those late student were annoying me.
@mustafaerdem140
@mustafaerdem140 3 года назад
Tesekkurler
@surered4958
@surered4958 4 года назад
I cannot believe how good of a professor this guy is. I wish I could learn software development and data science from him.
@glizzdawiz
@glizzdawiz 4 года назад
He has his own RU-vid channel, which I just discovered ru-vid.com/show-UC_iD0xppBwwsrM9DegC5cQQ
@yuexiao4739
@yuexiao4739 3 года назад
Love this course! Really helped me on my work.
@edavar6265
@edavar6265 Год назад
Another resource I can reccomend on this topic is Learn Enough Command Line To Be Dangerous. It is a fun read with exercises.
@10riddles
@10riddles 4 года назад
Super useful for graduates. Thanks a bunch.
@shubxam
@shubxam 4 года назад
Thank you so much for releasing this course in public. Just been through 1st lecture and content and the way you teach is very good.
@mubintirsaiwala7141
@mubintirsaiwala7141 4 года назад
I just can't thank you enough. Great content.
@jamoinmoin
@jamoinmoin 3 года назад
wow so many small useful things that actually boost productivity, great lecture
@sportsfreund8430
@sportsfreund8430 3 года назад
God damn, I had this bookmarked for way too long. Looking forward to going through the playlist! :)
@Kruglord
@Kruglord Год назад
Hey, that's Jon Gjengset! He does the "Crust of Rust" videos here on RU-vid, I had no idea he also taught these lectures, I only recognize him now after coming back again 2 years later.
@lautoka63
@lautoka63 4 года назад
A good thing to be doing. I used to do something similar in my airline engineering career by running lunchtime classes for new young engineers. Much of the time people assume that others know as much as they do, without thinking how long and hard it was to acquire that knowledge.
@KonstantinDorichev
@KonstantinDorichev 4 года назад
I remembered the basics and did learn a few commands I didn't know. Thanks!
@venusumanthpotru9535
@venusumanthpotru9535 3 года назад
This is super helpful 👍. Thanks a lot for uploading it to RU-vid.
@JasonSFuller
@JasonSFuller 4 года назад
40:24 Please don't teach people "sudo su" (or the slightly less terrible "sudo su -"). In fact, don't teach people about "su" at all, other than to use it to install/fix "sudo" or as a history lesson. It certainly _works_, but you're telling the shell to do something twice, i.e. "run as root" (sudo) then "become the root user" (su). The thing you want is "sudo -i" or "initial login" (equivalent to "su -" and "sudo su -"), which tells sudo to start a shell *and* process the normal login scripts, e.g. .profile, .login, .bash_profile, etc. "Su"ing twice has a number of unexpected and irritating--though not insurmountable--side-effects for administrators (i.e. me, a linux admin for 20+ years), but it also causes trouble for an end-users since it strips their environment variables. "Sudo" handles this quite well (depending on your sudoers configuration), but "su" does not. This is problematic for things like preserving a non-root user's $SSH_AUTH_SOCK (maybe you want to use your ssh keys when you're root), or language preferences ($LANG), or $DISPLAY for GUI users, etc.
@adammoore6594
@adammoore6594 4 года назад
Thanks, that is useful :)
@mwat56
@mwat56 4 года назад
In case you need a shell (to do more than a single command) you'd call: sudo bash That avoids the problems mentioned above.
@JasonSFuller
@JasonSFuller 4 года назад
@@mwat56 I'll politely disagree here. "sudo -i" does, in fact, give you a shell, AND it simulates a login the proper way. "sudo bash" suffers from the same environment problems as "sudo su"
4 года назад
Exactly. I was going to comment this, but you explained it much better than I could.
@aram535
@aram535 3 года назад
If you don't need to go through "login" then 'sudo -s' will also work and just start up a new environment rather than login then env. For example 'sudo -s' will drop you into a root shell and 'sudo -u foo -s' will drop you into a shell for user 'foo'. Again without the login (.profile & .login). I recommend using "sudo -c 'command'", "sudo -s" and "sudo -u foo -sH" (-H sets the homedir for the user as well).
@jasonkwan4814
@jasonkwan4814 4 года назад
I wish it would be available when I was a freshman one years ago. Thanks for the hard work.
@ZhengQu
@ZhengQu 3 года назад
It is never too late :)
@jitpackjoyride
@jitpackjoyride 3 года назад
lol, I was a freshman 4 years ago and much more experienced now and I’m still going to sit through these lectures 🤓
@rabingaire
@rabingaire 4 года назад
I love how this guy explains things, I am a long time subscriber of his channel his voice is just mesmerizing
@linsanity626
@linsanity626 4 года назад
Rabin Gaire same! what's his channel name?
@rabingaire
@rabingaire 4 года назад
@@linsanity626 channel link ru-vid.com/show-UC_iD0xppBwwsrM9DegC5cQQ
@keonys1
@keonys1 Год назад
Very insightful! thank you for releasing to us
@steveroger4570
@steveroger4570 3 года назад
This is better than my entire degree in my uni
@harishkrish14386
@harishkrish14386 3 года назад
Thanks fr these videos which have released! ❣️
@MubashirullahD
@MubashirullahD 3 года назад
This entire talk is this smart telling you you don't know things. :)
@priteshugrankar6815
@priteshugrankar6815 2 года назад
This is truly amazing!! Thanks for sharing!! By the way, I see vendor Perl and core perl in the path at 11:40. Does it mean the instructor is using Perl? If so, for what purpose?
@aavocadoToast
@aavocadoToast 4 года назад
Absolutely amazing lecture. I already knew 80% of these commands but it was still fun to watch and a good learning experience. Especially the fun stuff with sys directory in the end. Nobody teaches that lol...
@meghasharma1962
@meghasharma1962 3 года назад
Hey, does it require linux or we can do in windows?
@surplusvalue3271
@surplusvalue3271 4 месяца назад
same!
@surplusvalue3271
@surplusvalue3271 4 месяца назад
@@meghasharma1962 maybe use WSL, though i don't know how are dirs organized in wsl
@sefacorleone8276
@sefacorleone8276 3 года назад
oouuww yes.. i will put that knowledge inside my head. Thank you!
@garysantos7053
@garysantos7053 3 года назад
Just a note of added confusion: Apple replaced "bash" with "zsh" as the default shell in macOS Catalina While a number of Mac developers have already moved on to even more modern shells like Fish, zsh is more compatible with Bourne shell (sh) and mostly compatible with bash. THE VERGE/ By Tom Warren@tomwarren Jun 4, 2019, 4:27am EDT
@xrafter
@xrafter 3 года назад
Bash and zsh have the same syntax.
@advitiayanand5974
@advitiayanand5974 4 года назад
That's basic? Man I'm hyped!
@mukulkumar2316
@mukulkumar2316 4 года назад
this is exactly what i needed
@hulk94smash
@hulk94smash 2 года назад
WOWOWOWOWOWOW THIS IS GOLDDD!!! 🔥💯 wish I knew this year's ago 😭
@jerrys5387
@jerrys5387 3 года назад
I hope my univ could have such courses, instead of assuming we already know
@DutchmanDavid
@DutchmanDavid 4 года назад
`which` and `where` were important for me that one time I tried to (roughly) time a short piece of bash script. For some reason `time` did *not* want to accept some parameters I gave it. Turns out I was using the `shell reserved word`, not the *time* program that also exists in `/usr/bin/`. Executing the next gave me info on why my script didn't work: > which time time: shell reserved word > where time time: shell reserved word /usr/bin/time This showed me I just needed to add /usr/bin/ in front of the command to fix my troubles.
@kortaffel
@kortaffel 3 года назад
40:30 you don't need to "sudo su". A simple "su" is suffice. "su -" if you want to get rid of enviroment variables and a login shell
@rajasekharreddy7977
@rajasekharreddy7977 3 года назад
Very insightful and useful lecture.
@gaomingt
@gaomingt 3 года назад
22:40 Also, if you don't have write permission on a file but have write permission on its directory, you can still delete the file.
@Qladstone
@Qladstone 7 месяцев назад
After several years of watching lectures in my off-work hours, this shall be my "graduation" class.
@mcvgs1780
@mcvgs1780 3 года назад
I wish I had these kind of lectures in college.
@edgrimm5862
@edgrimm5862 6 месяцев назад
Most of the stuff under /sys/class/ are indirect links to the directories that have the actual stuff. By default, find does not follow symlinks. If you search from /sys/, you'll probably find brightness under kernel, devices, and modules.
@nairorokidul
@nairorokidul Год назад
Another not obvious thing: Inside the shell CTRL + C is cancel, not copy. The most useful trick noone tells you is hitting the up arrow offers you the latest command you entered, and you can scroll up as much as you want by hitting up arrow.
@geoafrikana
@geoafrikana 10 месяцев назад
Use Ctrl + Insert to copy Shift + Insert to paste
@Sethsm1
@Sethsm1 3 года назад
Extremely helpful. Thank you.
@MichaelS-em8id
@MichaelS-em8id 4 года назад
Are there solutions for the exercises given? I'm having trouble with Question 3. Is it telling me to execute the file with *ls semester*?
@warshipwarriors
@warshipwarriors 3 года назад
Nice lectures, happy to learn more
@kellybmackenzie
@kellybmackenzie Год назад
This is awesome, thank you so much!
@shawnxihaowu7638
@shawnxihaowu7638 Год назад
Thank you for this lecture!
@chococandy8009
@chococandy8009 8 месяцев назад
Probably the only semester that I would like to attend without bunking a single lecture ;) It was fun.
@beingchaitali
@beingchaitali 4 года назад
Really great lecturer , very helpful . Is there any way to get exercise example ?
@Steve-ox9gu
@Steve-ox9gu 4 года назад
thank you mit, this course helps a lot!
@euriskoo
@euriskoo Год назад
8:03, Actually the program doesn't treat the string as one argument, it same as using double quotes, it's still an array of arguments.
@narindersharma303
@narindersharma303 3 года назад
Very nicely explained!
@perlaramos8783
@perlaramos8783 3 года назад
I wish I had this course at my university!!!
@adjusted-bunny
@adjusted-bunny 3 года назад
How can you run "tee" as root (sudo) because it is not an ordinary program but a shell utility like ls? In my logic you would need a root shell, too. I'm confused.
@je9625
@je9625 4 года назад
Is there an example of screen casting from the command line he refers to ?
@santiagotodisco2668
@santiagotodisco2668 3 года назад
CTRL + L for cleaning and cd - for moving back and forward? Totally worth the time to see the lecture. I'm going to see all of them
@fhajji
@fhajji 3 года назад
Same: I didn't know about 'cd -'. Always been using pushd and popd. Ctrl-L I knew about from Emacs. :)
@stardusts42
@stardusts42 Год назад
FYI, you can drag and move the subtitle from the bottom to other places until the instructor types "Ctrl + L"
@haraldurkarlsson1147
@haraldurkarlsson1147 3 года назад
Excellent lectures!
@tetomdq
@tetomdq 3 года назад
# to run command as root. * head explodes * Doing my first steps on Debian Thank you, thank you, thank you for these lectures!
@clanoftheducks1850
@clanoftheducks1850 4 года назад
You probably want to explain su stands for substitute user not super user, which is a common misconception even in the Linux world, but su let's you go into a shell for another user, not just the superuser, hence the name.
@FrederizEguren
@FrederizEguren 3 года назад
He is very eloquent.
@user-ue7zt5pt8o
@user-ue7zt5pt8o 4 года назад
wow, that 's cool!Thank you :)
@phillipuchen
@phillipuchen 3 года назад
Brilliant course!
@thengc
@thengc 4 года назад
On the exercises #6: Run the command by explicitly starting the sh interpreter, and giving it the file semester as the first argument, i.e. sh semester. Why does this work, while ./semester didn’t? What's the reason for this exactly? Why does sh have permission while a simple ./ cannot execute the file?
@nobodywantme123
@nobodywantme123 4 года назад
I *think* that's because you don't have execution permission on that file so you can't run it directly. but when you use sh, it reads the file and interprets the commands within, so not actually executing the file. from sh's manpage: The shell is a command that reads lines from either a file or the terminal, interprets them, and generally executes other commands.
@maksimbronsky7117
@maksimbronsky7117 4 года назад
On Windows the adequate command for xdg-open is simply explorer.exe :-)
@ramprax
@ramprax 4 года назад
You can use 'start ' instead of explorer.exe
@jamesmaddock6719
@jamesmaddock6719 4 года назад
Thanks for the series! Any advice on how to pick a Linux distro?
@MissingSemester
@MissingSemester 4 года назад
Start with one of the popular ones like Ubuntu -- they're pretty user-friendly. If you want a more challenging environment (which could be good for learning), you could consider something like Arch. Jon uses Arch on his personal machine and on his servers. Anish and Jose use macOS on their personal machines. Anish uses Debian on his servers.
@Aleksandar0100
@Aleksandar0100 4 года назад
Install Gentoo
@expeditiontoabyss3597
@expeditiontoabyss3597 5 месяцев назад
this is crazy good, thanks
Далее
Lecture 2: Shell Tools and Scripting (2020)
48:56
Просмотров 289 тыс.
Turn VIM into a full featured IDE with only one command
11:55
KO’P GAP ESHAKKA YUK!😂
00:57
Просмотров 862 тыс.
REALLY LOVES CHIPS
00:19
Просмотров 1,9 млн
Arigato !! 😂
00:11
Просмотров 2,7 млн
The History of UNIX
10:30
Просмотров 48 тыс.
Lightweight Pieces in Aggregate Test
7:10
Просмотров 2,7 тыс.
Linux File System/Structure Explained!
15:59
Просмотров 4 млн
AGGREGATE CRUSHING VALUE TEST
10:05
Просмотров 172 тыс.
Плохие и хорошие видеокарты
1:00
Mi primera placa con dios
0:12
Просмотров 364 тыс.
Полезные программы для Windows
0:56