Perl

全6027件中1~20件表示
  • forkでプリント結果の違い

    文末改行無しの動きがわかりません $pid = fork; if($pid){ Pid(1); wait; }else{ Pid(2); } sub Pid{ print"#$_[0]\n&"; #print"#$_[0]\n&\n"; }

    • ベストアンサー
    • 暇なときにでも
    • OK_WAVE
    • Perl
    • 回答数 3
  • メールフォーム

    #!/usr/bin/perl use CGI; $cgi = new CGI(); $from = $cgi->param('from'); $namae = $cgi->param('namae'); $naiyou = $cgi->param('naiyou'); print "Content-type: text/html\n\n"; # 設定 $sendmail = '/usr/lib/sendmail'; $to = '*********@*****************'; #$from = ''; $subject ='************'; # メール送信 open(MAIL,"| $sendmail -t"); # ヘッダ情報出力 print MAIL "To: $to\n"; print MAIL "From: $from\n"; print MAIL "Subject: $subject\n\n"; # 本文出力 print MAIL " $namae\n\n"; print MAIL " $naiyou\n"; close(MAIL); #確認表示 print " $namae<br><br>"; print " $naiyou<br><br>"; print "メールを送信しました<br>"; exit HTMLで<textarea rows="6" cols="60" wrap="hard" required name="naiyou"> としたのですが Perlで確認表示の$naiyouの所が英語も日本語は改行されません。

    • ベストアンサー
    • 困ってます
    • andou220
    • Perl
    • 回答数 4
  • Perl WWW::Mechanize

    恐れ入ります。WWW::Mechanizeを使って下記のサイトにアクセスしようとしても開くことが出来ません。業務上自動化したい部分があるのですが、画面が開かず、ロード中のままで開かない状態です。その他のサイトでは開くことが可能です。よろしくお願いいたします。 $url[0] = "https://salonboard.com/"; ← 開かない $url[1] = "https://www.google.com"; ← 開く my $mech = WWW::Mechanize->new( agent=>"Mozilla/5.0 (Windows NT 10.0; Win64; x64) " ); my $response = $mech->get( $url[0] ); print "Content-type: text/html;\n\n"; print $mech->content;

    • ベストアンサー
    • 困ってます
    • spider32
    • Perl
    • 回答数 5
  • 条件分岐での排他的な論理和について

    $aが 'abc' 'xyz' 以外の時に実行したい場合の条件分岐。 ついついこんな風に書いて間違えてしまいます。 if( $a ne 'abc' || $a ne 'xyz' ){...} 上記だと論理和左側のneが真を返すので、右側の条件を見てくれないから仕方なくunlessを使います。 unless( $a eq 'abc' || $a eq 'xyz' ){...} でも私、unlessが嫌いなんです。 if文で書く最も処理が高速でスマートな方法教えて下さい。 部分一致ではないので正規表現は使いたくありませんが 比較演算子を使うより正規表現を使ったほうが処理が高速な場合は正規表現も有りでお願いします。

    • ベストアンサー
    • 暇なときにでも
    • nerumako
    • Perl
    • 回答数 2
  • 日本人の名前かアルファベットかをperlで判定する

    csvファイルを読み込んで、その中の名前欄がアルファベットか、あるいはそうではない(ひらがな、かたかな、漢字)かを判定するPerlプログラムを作ろうとしました。 if ( $name =~ /[A-Z]+/ ) とかすると、日本の名前でもアルファベットの名前でもヒットしてしまいます。 コードの問題かと思い、 https://tutorial.perlzemi.com/blog/20091118124667.html に従って perlコードをUTF-8で保存し、 読み込んだ名前文字列は $name = decode('UTF-8', $name); してみたのですが、やはり日本の名前の半数近くがヒットしてしまいます。 どうすればよろしいでしょうか。

    • ベストアンサー
    • 困ってます
    • nagaon
    • Perl
    • 回答数 2
  • Perl/CGIについて

    #!/usr/bin/perl use CGI; $cgi = new CGI(); $from = $cgi->param('from'); $namae = $cgi->param('namae'); $naiyou = $cgi->param('naiyou'); print "Content-type: text/html\n\n"; # 設定 $sendmail = '/usr/lib/sendmail'; $jcode = './jcode.pl'; $to = 'ha***@***.ne.jp'; #$from = ''; $subject ='名鉄と地下鉄の直通運転'; # 文字コードライブラリの読み込み require $jcode; # メール送信 &jcode'convert(*subject,'jis'); open(MAIL,"| $sendmail -t"); # ヘッダ情報出力 print MAIL "To: $to\n"; print MAIL "From: $from\n"; print MAIL "Subject: $subject\n\n"; # 本文出力 print MAIL " $namae\n\n"; print MAIL " $naiyou\n"; close(MAIL); #確認表示 print " $namae\n"; print " $naiyou\n"; print "メールを送信しました\n"; end #確認表示の所で表示が改行されない。

    • ベストアンサー
    • 困ってます
    • andou220
    • Perl
    • 回答数 1
  • strict refs in use

    Perl cgiを作っているものです。 Can't use string ("from_auto") as a HASH ref while "strict refs" in use at common.cgi line 43. というエラーがでました。line 43にはstrict refsに関係のありそうな記述はありません。 common.cgiの中に、連想配列の参照渡しを追加したとたん、上記のエラーが出るようになりました。解決策をご指導ください。

    • ベストアンサー
    • 困ってます
    • nagaon
    • Perl
    • 回答数 1
  • perl cgiで正規表現が無限にマッチする

    perl でcgiを作っています。フォームから受け取ったテキストから、正規表現を用いて、データを切り出そうと思っています。 以下のようなコードを書くと、マッチするのは一か所だけのはずなのに、無限回数マッチしてprintしつづけます。なにが間違っているのでしょうか。ご指導ください。 my $text = $in_data{'data_text'}; #フォームから受け取る $text =~ tr/+/ /; $text =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("H2", $1)/eg; # invalidation $text =~ s/[<>"'&\r\n]//g; $text =~ s/&/&amp;/g; $text =~ s/</&lt;/g; $text =~ s/>/&gt;/g; $text =~ s/"/&quot;/g; $text =~ s/'/'/g; $text =~ s/\r\n/<br>/g; $text =~ s/\n/<br>/g; $text =~ s/\r/<br>/g; while ( $text =~ /Line(\d{1}):長さ:(\S+) km/){ print "Line$1: $2<br>"; }

    • ベストアンサー
    • 困ってます
    • nagaon
    • Perl
    • 回答数 1
  • DreamHostでCGIを使う場合の設定について

    米国のDreamHostのVPSにあげているCGIのページなのですが 最近になって表示がおかしくなりました。 ソースは簡単な下の10行ほどなのですが・・・ 【CGIのソース】 ——————————————————————————— #!/usr/bin/perl $rand = int(rand(1000)); print "Content-type: text/html¥n¥n"; print "<html>¥n"; print "<head><title>TEST</title></head>¥n"; print "<body><center>¥n"; print "<h1>$rand</h1><a href=¥"rand_test.cgi¥">TEST</a>¥n"; print "</center></body></html>¥n"; exit; ——————————————————————————— CGIは「TEST」を押すと自信をリンクする形です。 以前は再読み込みして「 int(rand(1000))」の吐き出すランダムな数が クリックするたびに表示されました。 が、現在は同じ数が繰り返されます。 他のホスティング会社のカゴヤで試した所、 以前のDreamHostと同じようにクリックする度にランダムな数を表示します。 (http://kaitoriken.com/001.gif のGIFアニメの感じです。) サポに理由を尋ねるのですが、「キャッシュの問題」の一点張りです。 これの原因とかお分かりの方、教えていただけないでしょう?

    • ベストアンサー
    • 困ってます
    • nobu003
    • Perl
    • 回答数 3
  • perl

    net::sftp::foreignでperl上からperlスクリプトを新規作成したり編集すると、500エラーになりますが、なにが原因なんでしょうか?

    • ベストアンサー
    • 困ってます
    • humu01jp
    • Perl
    • 回答数 1
  • ファイルに差異があるかの確認ができない

    普段VBを使用しており、Perlはほぼ初心者 (十年前に教科書読んでちょっと作成した程度)です。 何千ものファイルを処理する必要があるため Perlを使用することになったのですが、 「File::Compare」のcompareを使用したファイルの比較が うまくいきません。Text::Diffを使用した比較はうまくいくため 何がいけないのかわからず困っております。 前提として、Perl Strawberryを使用しています。 use File::Compare; my $file1 = "test3.txt"; my $file2 = "test4.txt"; my $cmpr = 0; $cmpr = compare ("test3.txt", "test4.txt"); if ($cmpr == 0){   print "ファイルの内容が異なります"; } と、これだけなのですがうまく動作しません。 ファイルの中身が異なっていることは確認済みです。 また全く同じファイルを使用して print OUT diff "test3.txt", "test4.txt", {STYLE => "Context"}; とすると問題なく動作します。 できればファイルの中身が異なることを確認してから diffを実行したいためcompareも使おうとしています。 詳しい方には非常に簡単な問題なのだと思いますが、 お手上げ状態のためお力を貸していただけると幸いです。 よろしくお願いいたします。

    • ベストアンサー
    • 困ってます
    • Haruma2265
    • Perl
    • 回答数 2
  • perlでcsvファイルから複数行を抽出したい

    プログラミング初心者です。 お知恵をお貸しください。 perlでcsvファイルから任意の複数行を、コマンドライン引数を使って抜き出したいです。 1行だけだとうまくいきますが、以下ではすべてのcsvデータが出力されてしまいます。 ----------------------getcsv.pl ここから---------------------- #!/usr/bin/perl -- use strict; use warnings; open(IN, "<adata.csv"); open (OUT, ">$bdata.csv"); while(<IN>){ if($. == $ARGV[0] || $ARGV[1] || $ARGV[2] || $ARGV[3]) { print OUT $_; } } close(IN); close (OUT); ----------------------getcsv.pl ここまで---------------------- ----------------------コマンド ここから---------------------- perl getcsv.pl 1 3 8 10 ----------------------コマンド ここまで---------------------- よろしくお願いします。

    • ベストアンサー
    • 困ってます
    • OKINAWANOJ
    • Perl
    • 回答数 2
  • NET::SFTP::FOREIGNについて

    NET……FOREIGNを使って、ファイルのパーミッション(アクセス権)を変えようと試みましたが、変えられませんでした。 いや、変更は可能なのですが、意図したパーミッションになりません。 例えば、0755とすると、0363となります。 Perlのフォームデータから755と送られてきたときに正常に変更させるにはどうしたらいいですか? ちなみに、直接数値でなら正常に変更できます。 簡略しますが…… <input type="text" name="chmod" value="任意の数値"> このデータを受け渡し…… sftp->chmod("ファイル名", $FORM{'chmod'}); とすると、例えば任意の数値が0755だと、0363となり、うまく変更できません。 なにが原因かわかる方いらっしゃいますかね?

    • ベストアンサー
    • 困ってます
    • humu01jp
    • Perl
    • 回答数 2
  • NET::SFTP::FOREIGN

    perlモジュールのnet::sftp::foreignについてですが、$sftp->chmodと打っても、サーバ上のファイルのパーミッションを変えることができません。 $sftp->にchmodのコマンドは使えないのですか? また、パーミッションを変えるコマンドが他にある場合、それも教えて下さい。

    • 締切済み
    • すぐに回答を!
    • humu01jp
    • Perl
    • 回答数 5
  • 日本語ドメインか16進数かで別物になる

    サーチコンソールに下記のように出てしまいます。 参照元ページ https://www.就~.tokyo/html/link.html ユーザーが指定した正規 URL https://xn~.tokyo/html/link.html 日本語ドメインなので、日本語のドメイン名と、16進数のドメイン名が別物として認識されているようです。 もちろん、ドメイン名は全く同じで違いは16進数かそうでないかだけです。 参照元ページ https://www.就~.tokyo/html/link.html ユーザーが指定した正規 URL https://xn~.tokyo/html/link.html この場合もリダイレクトなのですか? もちろん https://xn~.tokyo/html/link.html でアクセスしてもちゃんと同じページが出てきます。 なぜ同じなのに日本語ドメインか16進数かで別物と検索エンジンは思ってしまったのでしょうか? どうすれば同じに出来ますか?

  • JSON Perlで指定のデータのみ抽出

    恐れ入ります。 {"num":29,"name","山田太郎"}{"num":30,"name","山田花子"}{"num":31,"name","山田次郎"} というJSONデータを読み込むことは出来たのですが、 この中からnumを、例えば29と指定したら、 {"num":29,"name","山田太郎"}のみが表示される形にしたいのですが、方法が分かりません。 宜しくお願い致します。

    • ベストアンサー
    • 困ってます
    • spider32
    • Perl
    • 回答数 1
  • Perl ローカル運用 exe起動

    恐れ入ります。現在anhttpdでperlプログラムをローカルマシン(windows10)で作成しているのですが、perl実行時に、ローカルのコマンドを実行したいのですが、どのようにしたら良いか分かりません。 具体的には、bitsadmin.exeを使ってグローバル上の特定のファイルをローカルフォルダにダウンロードするイメージです。 以上宜しくお願い致します。

    • ベストアンサー
    • 困ってます
    • spider32
    • Perl
    • 回答数 1
  • セキュリティ解除

    基板を改造して設定されてるセキュリティを解除することってできますか?

    • ベストアンサー
    • 困ってます
    • mamamamama826
    • Perl
    • 回答数 2
  • Perl cookie 削除か書込

    Perl cookie cookie→NAMEというクッキーデータを 削除か、まったく別のものに書き換えたいのですが、どうすればいいのでしょうか? 現在はJavaScriptで書き込んでいるのですが、 <script> \$(function(){ \$('#NAME).val(\$.cookie("NAME")); \$("#Login").click(function(){ \$.cookie("NAME",\$('#NAME).attr('value'), { expires: 365 }); location.href="$MYURL" }) }) </script> Perl ソース中で、PerlでこのNAMEを消したい 瞬間があります。 もしくは、書き換えたいです。 やりかたを教えて下さい。 調べてはいるものの うまくいきません。

    • 締切済み
    • 困ってます
    • r-h-a-o
    • Perl
    • 回答数 1
  • Perl の use strict に付いて

    ●HTML <html><head> <meta http-equiv="content-type" content="text/html;charset=UTF-8" /> <title>テスト5(UTF-8)</title> </head> <body> <form action="test5.cgi" method="post" > <input type="text" name="f1" value="" size="80"> <button type="submit" >送信</button> </form> </body></html> —————————————————————————————————————— ●Perl #!/usr/bin/perl #use strict; ※問題の行1 use warnings; use CGI; print "Content-type: text/html\n\n"; print "<meta charset=\"UTF-8\">\n"; # POST / GET パラメータを取得------------------------- my $q = new CGI; # パラメータ名を指定して取得する my $param1 = $q->param('name1'); my $param2 = $q->param('name2'); # FORM値の取得----------------------------------- # 全てのパラメータを取得する for my $param_name ($q->param) { print $param_name . ' = ' . $q->param($param_name) ; print "<br>\n"; ${$param_name} = $q->param($param_name); ※問題の行2 } #------------------------------------------------- print "テスト<hr>\n"; print "$f1<br>\n"; exit; —————————————————————————————————————— 【質問】 「※問題の行1」+「※問題の行2」 = エラー 「※問題の行1」のみ = 正常に動きます 「※問題の行2」のみ = 正常に動きます 「※問題の行1」の「use strict; 」と 「※問題の行2」の「${$param_name} = $q->param($param_name); 」 をどう書き換えれば、二つとも記述したまま正常に動くのでしょうか? よろしくお願いします。

    • ベストアンサー
    • 困ってます
    • nobu003
    • Perl
    • 回答数 1