tachikuramiのプロフィール
- ベストアンサー数
- 3
- ベストアンサー率
- 60%
- お礼率
- 100%
- 登録日2006/08/22
- MAC OSXのTerminalにperlの出力が表示されない
リャマ本で学び始めたばかりなのですが、プログラムの出力がTerminalに表示されずに困っています。 以前学校の授業でUNIX機を使ってhello worldをやったときはchmodして「perl ソース名」とすれば標準出力にhello worldと出た気がするのですが、MAC OSXでchmodして実行してもエラーも出ずに、改行されて通常の入力待ちカーソルが点滅するだけです。 試しにリダイレクトもしてみましたが、新しいファイルができただけでした。 ソースはhello world出すだけのアレなので間違いようがないと思います。 「osx perl」などのキーワードで教えて!gooやgoogleで検索してみましたが、プログラム講座のようなものはたくさんあるのですが、初歩的な環境構築の手ほどきが見つからず、とりあえず http://homepage.mac.com/dnagase/macosx/perlcgi.html ここを見て「これはApacheで実行したいときだからなんか違うなー」と思いつつも藁にもすがる思いで設定してみたりもしましたが変化はありませんでした。 おそらく鼻から火が出るくらいの恥ずかしい質問だとは思うのですが、こいつの解決法探しに一日費やしてしまったので恥も承知で聞いてみることにしました。よろしくおねがいします。
- Tid::IxHash の使い方
Tid::IxHash の使い方がよくわかりません。 ハッシュのキーの設定順を保持したいのですが、 以下のどこが間違っているでしょうか? キーの順番はバラバラになってしまいます。 #ハッシュリファレンス2重だと使えない??? use strict; use Tie::IxHash; tie my %{$myhash->{test}}, 'Tie::IxHash'; for(my $i=0; $i<20; $i++) { $myhash->{test}->{$i} = 'kero'; } my @keys = keys %{$myhash->{test}}; print @keys;
- perlからDBIを使用したpostgresへの接続でエラー
perlからDBIを使用して、データベースにアクセスしたいと思っていますが、connectで下記のようなエラーが出力され接続できません。 ↓↓↓↓↓↓apacheのエラーログ↓↓↓↓↓↓↓ DBI connect('dbname=[mscdb]','[postgres]',...) failed: FATAL: database "[mscdb]" does not exist at /web/member/cgi-bin/dbitest.pl line 8 ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ mscdbがないとエラーが出力されているように思いますが、mscdbは存在します。どういった原因が考えられるでしょうか? プログラムには以下のように記述しています。 #!/usr/bin/perl use DBI; use constant DBNAME => 'DBI:Pg:dbname=[mscdb]'; use constant DBUSER => '[postgres]'; use constant DBPASS => '[××××]'; DBI->connect( DBNAME, DBUSER, DBPASS, { AutoCommit => 0 }); print "Content-Type: text/plain\n\n"; print $DBI::errstr? $_: 'Done'; 環境は以下の通りです。 perl v5.8.2 postgres v8.1.2 vine linux dbd v1.49
- perlのLWPがページによって、正常に作動しません?
下記コードを書いたのですが、ページのソースを取得することができません。 どのように変えれば、取得することができますでしょうか? 因みに、URL部分を、 http://www.amazon.co.jp/gp/product/B000H9I0F6 とした場合は正常に取得できました。 お分かりになる方、何卒、宜しくお願い致します。 #!/usr/bin/perl print "Content-Type: text/plain\n\n"; use LWP; use HTTP::Cookies; $url="http://www.amazon.co.jp/gp/product/B000GPEXX4"; $file="cookies.txt"; $browser = LWP::UserAgent->new; $browser->cookie_jar({file =>$file, autosave=>1 }); $response = $browser->get($url); print $response->{_content}; exit;
- ベストアンサー
- CGI
- mai_540903
- 回答数1