yego.me
💡 Stop wasting time. Read Youtube instead of watch. Download Chrome Extension

Perl Lesson 2


3m read
·Nov 3, 2024

Processing might take a few minutes. Refresh later.

Hey guys, this is Mids, and on with Perl lesson two. This is the last Perl lesson I'm going to do, and I'm going to rush through it because right now I know that a bunch of you who are watching the summer agenda are just dying to get to Objective C, and you don't want to have to sit through Java next.

So, I'm still going to do all the Java lessons in the same order, but I'm going to start making the videos faster so that way you guys can get to Objective C quicker. This is just another Perl lesson, and it's going to be the last Perl lesson. I'm not really focusing on Perl since I know all of you are just dying to go to Objective C.

So first of all, here's what we're going to do in this Perl lesson: we're going to get a string from the console, we're going to check and see what it is, and then we're going to loop it 10 times and we're going to print whatever they type in back out to the console.

So we're going to open Terminal because we make all Perl apps with Terminal. So I'm going to see you to my desktop. I'm going to V or VI or Nano, and by the way, you should have watched our other terminal lessons before watching this one, so just search "terminal lesson one" on our channel.

Okay, so I'm going to VI input.pl. So now we do the code that we always put at the beginning of every Perl script: #!/usr/bin/perl. Now inside this code, we're going to do a few things. We're going to, like I said, do a loop. So I'm going to say $i = 0; Semicolon. On the next line, I'm going to say while ($i < 10) {. This code right here is going to run while the number $i is less than 10.

Right now it's zero, so what we're going to do at the end of this code every time is we're going to say $i++; and that adds one to the integer $i. So this is going to run technically 10 times because when it's nine, it'll run, and when it's ten, it won't run, and it'll go to the next code after this closing curly brace.

So right in here, I'm going to say print "Enter directory to read: "; Okay, and we're going to say $dir = <STDIN>; So we're reading a line from standard input. Now we're going to do chomp($dir); so we're getting this input from the console.

Now, here's what we're going to do with it, it's magic. We're going to do system("ls $dir");. So system is a new thing; system actually runs a command in Terminal basically. So ls $dir is going to just display the listing.

Now I'm going to say if ($dir eq "/") { and here's the interesting thing: when you're comparing two integers, use ==, and when you're comparing a string to something, use eq. So this is where it's special. If $dir eq "/", then I'm going to use the curly braces again, I'm going to say print "Nice, you're viewing /";.

So it's going to run a command in Terminal. If they type /, it's going to print "Nice, you're viewing /" and it's going to ask them for a directory to read, and it'll do this 10 times. Then after that, it's going to say "10 is up. Goodbye";.

So now we're going to run this. So I'm going to say perl input.pl. So, enter directory to read: first I'll type /users. Okay, next I'll type /, and it'll say, "Nice, you're viewing /."

So this is our reading program. So I'll just do it a few more times, and it'll say "10 is up. Goodbye." Okay, so this is our Perl script. It's very not limited, so if you really wanted to learn Perl, this is not where you're going to go.

I was just using Perl as an example so that way when you do PHP later on, you'll be familiar with it. But those of you who want to rush through to get right to Objective C, so I'm only doing two Perl lessons, and this is very cut back. I have three other Perl lessons that weren't quite as g...

More Articles

View All
Inductor kickback 1 of 2
I want to talk about a new example of an inductor circuit, and we have one shown here where this inductor is now controlled by a switch. This is a push button switch that we move in and out, and this metal plate here will touch these two contacts and comp…
Populations, communities, and ecosystems | Middle school biology | Khan Academy
In biology, it’s useful to have some shared language so we can communicate and describe the world around us in ways that we can all understand together. So here, we’re going to talk about populations, communities, and ecosystems, and as we’ll see, these …
3d vector field example | Multivariable calculus | Khan Academy
So in the last video, I talked about three-dimensional vector fields, and I finished things off with this sort of identity function example where at an input point (X, Y, Z), the output vector is also (X, Y, Z). Here, I want to go through a slightly more …
Does Commitment Mean Better Sex? | Original Sin: Sex
Looks okay. Well, the first thing I would like to say is that it’s amazing that in 2016, a channel like National Geographic, who used to show only animal sex and never human sex, is now having Dr. Ruth Westheimer talking about sex. There are hundreds of …
Virality and network effects drive organic growth.
The best consumer companies incorporate both virality and network effect, which are different concepts but very closely related, in order to grow their user base organically. Virality is the idea that one user using your product introduces it to other us…
Congruent shapes and transformations
We’re told Cassandra was curious if triangle ABC and triangle GFE were congruent, so he tried to map one figure onto the other using a rotation. So, let’s see. This is triangle ABC, and it looks like at first he rotates triangle ABC about point C to get i…