<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>寝る前にラーメン &#187; Perl</title>
	<atom:link href="http://thleave.com/tag/perl/feed" rel="self" type="application/rss+xml" />
	<link>http://thleave.com</link>
	<description>学生エンジニアのコードに関する忘備録</description>
	<lastBuildDate>Mon, 30 Aug 2010 15:41:01 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>UNIXコマンドをPerl(CGI)で動かそうとする</title>
		<link>http://thleave.com/works/146</link>
		<comments>http://thleave.com/works/146#comments</comments>
		<pubDate>Thu, 12 Nov 2009 18:22:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[お仕事]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[UNIX]]></category>

		<guid isPermaLink="false">http://thleave.com/?p=146</guid>
		<description><![CDATA[外部からはSSHが通せないサーバーのスクリプトを動かしたいというのがテーマ。
crontabとかではなくて、任意のタイミングで。

まず、PerlでUNIXコマンドを動かすには方法がいくつかある。

バッククォート(=b [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>外部からはSSHが通せないサーバーのスクリプトを動かしたいというのがテーマ。<br />
crontabとかではなくて、任意のタイミングで。</p>
<p><span id="more-146"></span></p>
<p>まず、PerlでUNIXコマンドを動かすには方法がいくつかある。</p>
<ul>
<li>バッククォート(=backtrick) を使って動かす。<br />
[perl]<br />
print `ls -al`;<br />
[/perl]<br />
出力はコマンドの実行結果。
</li>
<li>system()やexec()などの関数を使う<br />
[perl]<br />
system &#8220;ls -al&#8221;;<br />
[/perl]<br />
出力はコマンドの返値、正否。1とか0とか。詳しくは調べて。
</li>
</ul>
<p>別にどっちを使っても構わないと思う。<br />
<br/></p>
<p>次に問題になるのはログインするユーザー。</p>
<ul>
<li>CGIによるアクセス => nobody</li>
<li>通常のSSHアクセス => rootとか登録されたユーザーとか</li>
</ul>
<p>ファイルを触りたい場合、suするかsudoを使うしかない。</p>
<ol>
<li>suする場合<br />
対話型のコマンドなのでパスワードが必要なユーザーには基本的にはsuできないが、expectを使えばいける。<br />
詳しくは調べてー。インストール必要。
</li>
<li>sudoする場合<br />
サーバー管理者に設定してもらう必要がある。<br />
セキュリティーホールを広げるものなのでー、これは基本的に非推奨だよね。
</li>
</ol>
<p>どちらにせよ、こういうことをするのはセキュリティーを下げてリスクを上げるので良くなさそう。<br />
できそうな感じにはなったけどね。<br />
参考までに。</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://thleave.com/works/146/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Perl本2冊目</title>
		<link>http://thleave.com/coding/109</link>
		<comments>http://thleave.com/coding/109#comments</comments>
		<pubDate>Wed, 26 Aug 2009 15:18:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://thleave.com/?p=109</guid>
		<description><![CDATA[今日はSRMがあったのに寝坊してしまった。
それも一日中疲労感疲労感で・・・。これから大丈夫かな・・・。
&#8212;
リャマ本を読み終わったので、次を買ってみた。

なるほど、代表的なCPANの紹介や高度なテクニック [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>今日はSRMがあったのに寝坊してしまった。<br />
それも一日中疲労感疲労感で・・・。これから大丈夫かな・・・。</p>
<p>&#8212;</p>
<p>リャマ本を読み終わったので、次を買ってみた。</p>
<p><iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&#038;bc1=000000&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=000000&#038;lc1=0000FF&#038;t=sasuraifish-22&#038;o=9&#038;p=8&#038;l=as1&#038;m=amazon&#038;f=ifr&#038;md=1X69VDGQCMF7Z30FM082&#038;asins=487311280X" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p>なるほど、代表的なCPANの紹介や高度なテクニックの紹介がずらり。<br />
Perlをごりごり書きたい人にはいいのかも。<br />
でも、オレみたいにコードよりひたすら実装実装のためにPerl書いている人には無縁かも。</p>
<p>やっぱアルパカ本買えば良かったかな。</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://thleave.com/coding/109/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EclipseでPerlの開発環境を作ったけれど。</title>
		<link>http://thleave.com/coding/107</link>
		<comments>http://thleave.com/coding/107#comments</comments>
		<pubDate>Fri, 21 Aug 2009 16:08:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://thleave.com/?p=107</guid>
		<description><![CDATA[昨日の投稿の続き。
EclipseでPerlの開発環境を作ろう
http://thleave.com/coding/98
自作のモジュールとかを使うときに警告が出ちゃうという話。
でるだけならいいんだけど、そこで文法チェ [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>昨日の投稿の続き。</p>
<p>EclipseでPerlの開発環境を作ろう<br />
<a href="http://thleave.com/coding/98">http://thleave.com/coding/98</a></p>
<p>自作のモジュールとかを使うときに警告が出ちゃうという話。<br />
でるだけならいいんだけど、そこで文法チェックが終わっちゃうからタチがわるい。</p>
<p>でも、perl.exeの指定のところで、以下のようにすれば解決。<br />
[perl]<br />
&#8220;C:\Perl\bin\perl.exe&#8221; -Mmodule=[workspaceの場所]<br />
[/perl]</p>
<p>&#8212;</p>
<p>[2009/09/15 追記]<br />
あ、これやるとデバック効かない・・・かも？</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://thleave.com/coding/107/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EclipseでPerlの開発環境を作ろう</title>
		<link>http://thleave.com/coding/98</link>
		<comments>http://thleave.com/coding/98#comments</comments>
		<pubDate>Thu, 20 Aug 2009 14:33:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://thleave.com/?p=98</guid>
		<description><![CDATA[前にも書いたようにPerlを使うことになったので、開発環境を探していました。
でも、ずっとJavaでEclipseを使って慣れていたので、Eclipseを使うことにしました。
&#8212;
Eclipse は現在3.5 [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>前にも書いたようにPerlを使うことになったので、開発環境を探していました。<br />
でも、ずっとJavaでEclipseを使って慣れていたので、Eclipseを使うことにしました。</p>
<p>&#8212;</p>
<p>Eclipse は現在3.5(Galileo)が最新です。<br />
公式から落としてきます。<br />
種類がありますが、Classicで十分です。<br />
<a href="http://www.eclipse.org/">http://www.eclipse.org/</a></p>
<p>次にプラグインをいれます。<br />
EclipseをPerlに対応させるものだと、今はEPICしか見あたらないようです。<br />
<a href="http://www.epic-ide.org/">http://www.epic-ide.org/</a></p>
<p>EPICをインストールするにはまずEclipseを起動して、<br />
[Help]->[Install New Software]<br />
で表示されるダイアログでURLを指定します。<br />
公式にもありますが、以下のURLです。<br />
<strong>http://e-p-i-c.sf.net/updates</strong><br />
後は流れに任せます。</p>
<p>次にPerlをインストールします。<br />
XAMPPなどの統合環境を使っていても、とりあえず入れた方がいいです。<br />
いろいろ方法はありますが、WIndowsユーザーならActivePerlが楽だと思います。<br />
<a href="http://www.activestate.com/activeperl/">http://www.activestate.com/activeperl/</a><br />
ダウンロードしてインストールします。</p>
<p>そしたら、EclipseからPerlが見えるように設定をします。<br />
[Window]->[Preferences]<br />
で設定画面が開きます。<br />
[ Perl EPIC]という項目があるので、そこで&#8221;perl.exe&#8221;までのパスを設定します。<br />
&#8220;perl.exe&#8221;はActivePerlのインストール先のbin以下にあるはずです。</p>
<p>ここらへんで再起動をして、インストールは一通り終わりです。<br />
これで大体の補完とデバックが効きます。<br />
ただ、「動的型付け言語であること」「EPICの更新があまりアクティブに行われていないこと」が原因だと思いますが、あまりキビキビとした補完はききません。<br />
Javaユーザーの方は不満に思うかも。</p>
<p>あと、実際に使うのであれば、もうすこしプラグインが必要だと思います。</p>
<p>Perlには関係ありませんが、</p>
<ul>
<li>SVN<br />
Eclipse3.4あたりから別途インストールが必要になってしまいました。</li>
<li><a href="http://aptana.com/">AptanaIDE</a><br />
重いんですが、スペックに余裕があれば。HTMLやJSのエディタが感動するほど素晴らしいです。</li>
<li><a href="http://muermann.org/gotofile/">GotoFile Eclipse Plugin</a><br />
ファイル検索が秒速でできるようになります。キャメルサーチなどをEclipse上で実装。</li>
<li><a href="http://www.azzurri.jp/ja/clay/index.html">Clay Database Modeling</a><br />
軽量で使いやすいDBモデリングソフトです。CREATE文の自動生成やリバースエンジニアリングなど。</li>
</ul>
<p>などはいれておいて損がないと思います。</p>
<p>長くなりましたが参考になれば。</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://thleave.com/coding/98/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>はじめてではないPerl</title>
		<link>http://thleave.com/works/79</link>
		<comments>http://thleave.com/works/79#comments</comments>
		<pubDate>Sat, 15 Aug 2009 16:33:26 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[お仕事]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://thleave.com/?p=79</guid>
		<description><![CDATA[昔よく簡単なアプリを作るのに使っていたので書けるつもりでいたPerl
今度仕事で使いそうだったので、ちゃんと勉強してみようと思い本を買った。
それも易しめのタイトル「はじめてのPerl」、しかしオライリー。

語弊を恐れ [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>昔よく簡単なアプリを作るのに使っていたので書けるつもりでいたPerl<br />
今度仕事で使いそうだったので、ちゃんと勉強してみようと思い本を買った。<br />
それも易しめのタイトル「はじめてのPerl」、しかしオライリー。</p>
<p><iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&#038;bc1=000000&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=000000&#038;lc1=0000FF&#038;t=sasuraifish-22&#038;o=9&#038;p=8&#038;l=as1&#038;m=amazon&#038;f=ifr&#038;md=1X69VDGQCMF7Z30FM082&#038;asins=4873111269" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p>語弊を恐れず書くと、読んでみたらさっぱり分からないのなんのって。<br />
きっと読めない、書けないわけではないんだけど、知らない文法とか機能が多くて驚いた。<br />
PHP書けるから余裕だと思っていたけど、それなんかよりよっぽど複雑な言語だった。<br />
でも、全部覚えたら楽しそう。複雑なアルゴリズムが短いコードでぬるぬる書けたら絶対楽しい。<br />
この上にRubyがあるって思うと更に。<br />
ちゃんと勉強しよう。</p>
<p>ちなみにPerlの本、続きがあって。<br />
表紙に毛が生えた「続編」</p>
<p><iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&#038;bc1=000000&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=000000&#038;lc1=0000FF&#038;t=sasuraifish-22&#038;o=9&#038;p=8&#038;l=as1&#038;m=amazon&#038;f=ifr&#038;md=1X69VDGQCMF7Z30FM082&#038;asins=4873113059" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p>全員大集合の「マスタリングPerl」</p>
<p><iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&#038;bc1=000000&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=000000&#038;lc1=0000FF&#038;t=sasuraifish-22&#038;o=9&#038;p=8&#038;l=as1&#038;m=amazon&#038;f=ifr&#038;md=1X69VDGQCMF7Z30FM082&#038;asins=4873113970" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p>表紙が面白い。</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://thleave.com/works/79/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
