perl
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG俺にperlを叩きこんでください
0002デフォルトの名無しさん
NGNG00032
NGNG0004デフォルトの名無しさん
NGNG板違いだ。
削除依頼
http://kaba.2ch.net/saku/
夢・独り言
http://life.2ch.net/yume/
0005棄教者 ◆witdLTi2
NGNG0006デフォルトの名無しさん
NGNG0007デフォルトの名無しさん
NGNG0008棄教者 ◆witdLTi2
NGNG第 1 講
言語の名前は Perl です。 PERL とか perl ではありません。
Perl の実行方法は使っている処理系によって若干異なります。
ここでは糞スレを立てた>>1が UN*X 系 OS を利用していると仮定して
話を進めます。
まず、シェルを立ち上げて
$ which perl
と打ち込んで下さい。私の環境では
/usr/bin/perl
と出ました。では続けて
$cat <<__PERL__ >hello
#!/usr/bin/perl
print "Hello, world!\n";
__PERL__
と打ち込んで下さい。 hello というファイルが生成されているはずです。
このファイルに実行権を付けましょう。
$chmod o+x hello
では実行してみましょう。
$./hello
Hello, world!
と表示されましたか?
ではこれにて今日の授業は終わりです。
0009デフォルトの名無しさん
NGNG先生!どうしてエディタを使わないんですか?
Perlはエディタで書くファイルは使えないのでしょうか!
それとも、
「俺はヒアドキュメントの使い手さ!」
と言う自慢なのでしょうか!
0010棄教者 ◆witdLTi2
NGNGプログラムがたったの二行だったからです。別に自慢するつもりはないです。
ただ、私より年上の人たちはMS-DOSだった時代、
C:\>copy con config.sys
って打っていましたよね?
明日は文字列変数の話をしようと思うので、プログラムがもう少し長くなります。
糞スレを立てた>>1や他の生徒の皆さんは、
明日までにエディタの使い方を予習しておいて下さい。
ちなみに私は Windows では秀丸を、UN*X では vi を使っています。
0011デフォルトの名無しさん
NGNG0012デフォルトの名無しさん
NGNG0013デフォルトの名無しさん
NGNG学生はタダだろ
0014デフォルトの名無しさん
NGNG0015棄教者 ◆witdLTi2
NGNG今日はスカラー変数の使い方です。
彼女に挨拶をするプログラムを作りましょう。
昨日の print 文を使えば、
=====
#!/usr/bin/perl
print "Good morning, Licca\n";
print "Good afternoon, Licca\n";
print "Good evening, Licca\n";
=====
ってコードを書けばいいわけです。
でも彼女と別れて別の彼女を見つけたら三行とも書き換えないといけませんよね?
三行コードを書き換えるのはうざいし、
消し忘れがあったら新しい彼女とハルマゲドン状態になりかねません。
そこで変数の登場です。
====
#!/usr/bin/perl
$kanojo = "Licca";
print "Good morning, $kanojo\n";
print "Good afternoon, $kanojo\n";
print "Good evening, $kanojo\n";
====
とすると、一行コードが長くなってしまいますが、彼女が変わっても
2行目の $kanojo = "Licca"; を $kanojo = "Mieko"; に変えるだけで
挨拶をすぐに切り替えられ、彼女と無用の喧嘩を防ぐことができます。
0016棄教者 ◆witdLTi2
NGNGこの文字列変数は、くっつけたり繰り返したりすることができます。
====
$kanojo = "Licca";
$ore = "Kikyosha";
print $kanojo . $ore;
====
とやると LiccaKikyosha と出てきますね。
そう、 文字列やリテラルをピリオドで結ぶとくっつけることができます。
ではこういうのはどうでしょうか。
====
$kanojo = "Licca";
print $kanojo x 5;
====
結果は LiccaLiccaLiccaLiccaLicca になります。リカタン、ハァハァハァハァハァ。。 先生が壊れてしまいました。
この演算子は、省略した書き方ができます。
====
$kanojo = "Licca";
$kanojo .= "Kikyosha";
print $kanojo;
====
結果は LiccaKikyosha になります。
====
$kanojo = "Licca";
$kanojo x= 5;
print $kanojo;
====
結果は LiccaLiccaLiccaLiccaLicca になります。
今日はこの辺で。明日はリスト変数をやりますが、質問があった場合はその限りではありません。
0017棄教者 ◆witdLTi2
NGNG>>11 Emacsじゃないんですね。
>>12 MacユーザやUN*Xユーザはメモ帳を持っていないでしょう。
>>13 先生は学生時代にライセンスを取得しましたが今はリーマンやってるんで
お金を払わないといけないですね。
>>14 構文のカラー表示が vi に比べてちょっと弱いですね。
でも秀丸のマクロを使いマクロっているんで、今更やめられないのが本音です。
>>1 文章は下手ですがこれでも「蓄積された英知を振り絞り」あなたにP「erlを叩きこんで」るつもりです。
これまでの授業でわからないことがあったら遠慮なく聞いて下さい。
難しい質問は他スレで聞いて下さい。
0018デフォルトの名無しさん
NGNGreturn 1;
}}();
使い道がない (ノД`、)
0019デフォルトの名無しさん
NGNG0020デフォルトの名無しさん
NGNG0021デフォルトの名無しさん
NGNGお前の書き込みよりはるかにマシだ。
0022棄教者 ◆witdLTi2
NGNGhttp://pc.2ch.net/test/read.cgi/tech/1020159839/l50
http://pc.2ch.net/test/read.cgi/tech/1017736187/l50
みたいな単発質問スレが多いので、
体系的にPerlを解説しておけば糞スレの生成率も下がるんじゃないかと思ったんですよ。
基本的にこのスレはsage進行でよろしく。
0023デフォルトの名無しさん
NGNG2chで「体系的」に解説する必要は無い。
マニュアル読め。
0024デフォルトの名無しさん
NGNG立てないっての。
0025デフォルトの名無しさん
NGNG0026デフォルトの名無しさん
NGNG002723
NGNG御意。
であれば「〜を見よ」とか、
「〜に〜な情報がある」って書き込みの方がナンボ有益なことかと思う。
ってゆーか、1次リソース調べないで、
あーいう「素人の解説」ばっかりをあてにしてると、
そこで解説されたことしか出来ない無能チャンが出来上がるだけなんだけど、
マニュアル読まない人種って危機感とか無いのかね。
0028デフォルトの名無しさん
NGNGマニュアル読まなければいけないなんて。。
0029デフォルトの名無しさん
NGNG0030デフォルトの名無しさん
NGNG> $chmod o+x hello
自分では実行できない罠。
■ このスレッドは過去ログ倉庫に格納されています