• ベストアンサー

perl 初めてのプログラムにエラーが出ます

hello.pl というファイルに print “hello”; と、書きました。 ターミナルに perl -cw hello.pl と、入力しました。 Unrecognized character \xE2; marked by <-- HERE after print <-- HERE near column 7 at hello.pl line 1. と、メッセージが出ました。 解決方法を教えて頂きたいです。 よろしくお願いします。

  • nwork
  • お礼率100% (2/2)
  • Perl
  • 回答数2
  • ありがとう数13

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4849/10263)
回答No.1

printの直後、スペースのつもりで、全角空白を書いちゃってますね。

nwork
質問者

お礼

本当に有り難う御座います。 助かりました。

その他の回答 (1)

  • hitomura
  • ベストアンサー率48% (325/664)
回答No.2

二重引用符が全角です。半角の二重引用符を使用してください。

nwork
質問者

お礼

本当に有り難うございました。 どちらもベストアンサーです。 助かりました。

関連するQ&A

  • perlの ¥033 不具合エラー

    以下のスクリプトを実行すると"Unrecognized character \033 at ./tools/aaa.pl line 5."というエラーが出てしまいます。やりたいことは 文中の "//! aaa"を全て削除して出力するというものです。何が悪いのでしょうか? ----------------- #! /usr/bin/perl while(<>){ if(m#//\s*\!.*#){ $_ =~ s#//\s*\!.*\n##; print "AAA: $_\n"; }else{ print $_; } } -------------- 以上、宜しくお願い致します。

  • Perlの超初心者です。

    Perlの超初心者です。 mac osXを使っています。テキストエディットで、#! /usr/bin/perl print "hello world!\n";と書いてperl-test.plと保存しました。そしてターミナルを起動してperl-test.plとタイプしたのですが、-bash: perl-test.pl: No such file or directoryとなってしまいます。 試しにターミナルでperl -le "print 'hello world';"とタイプするとhello worldとかえってきました。 perl-test.plはfinderのデスクトップに保存してあります。いったいどうすればperl-test.plのファイルを実行できるのですか? 教えて下さい。よろしくお願いします。

  • 文字列比較

    文字列比較演算子で~の文字列の中に~が含まれていれば真を返すという下記のようなサンプルを作ったのですが、「ソ」「タ」「ゼ」「ー」の4文字だけ比較することができませんでした。エラーは 「ソ」 Unrecognized character \x94 at untitled2.pl line 5. 「タ」 エラーなし。ただし比較せず。 「ゼ」 Unmatched [ in regex; marked by <-- HERE in m/ゼ <-- HERE / at untitled2.pl line 4. 「ー」 Unmatched [ in regex; marked by <-- HERE in m/ー <-- HERE / at untitled2.pl line 4. と表示されましたのですが、これは上記の4文字に関しては部分比較することができないのでしょうか? それとも別の方法があるのでしょうか?どなたかご指導のよろしくお願いします。 環境はWindowsXP、ActivePerl、Httpdです。 ************************ $words1 = "アイウカキクスセソタチツゼー" ; $compare = "タ" ; if( $words1 =~ /$compare/ ){ print "比較対象文字が含まれています。\n" ; } else{ print "比較対象文字は存在しません。\n" ; }

    • ベストアンサー
    • Perl
  • perlの起動法

    perl起動法について質問なのですが、 perlでファイルを作り、一番上に#!/usr/bin/perlと書いて、perl.plという名前で保存しました。 ターミナルで$chmod 755 perl.pl $./perl.pl とコマンドをうったのですが、print文で書いたhello worldというが表示されません。 でもperl perl.plとコマンドを打つと実行されます。 一体この違いはなんなのでしょうか?学校の課題で、どうしても./perl.plとして実行させなければならないので是非解答お願いします。

    • ベストアンサー
    • Perl
  • perlのprint文がうまく動きません

    perlの勉強を始めました。 perlの本の最初に Hello.plというファイルに print”Hello!”;と記述して perl Hello.plとすると画面にHello!と表示されるとあるのですが、何も表示されません。 ファイルの記述をprint ”Hello!\n";としてやるとHello!と一応表示されるのですがなぜ改行が必要になるのかがよくわかりません。どのように理解すればいいのでしょうか?

  • PERLのSHIFT_JISの振る舞いについて

    PERLでプログラムを作る時、SHIFT-JIS形式で長音符(ー)があると、エスケイプしてもエラーが出てしまい困っています。 また、ホームページそのものがSHIFT_JIS形式のため、UTF-8など他の形式を使うと煩雑になるため避けたいと思っています。 エスケイプさせるなど簡単な方法は無いものでしょうか? また、こちらはご存じでしたら教えていただきたいのですが、「¥」マークでエスケイプしてもうまくいかない文字には他にどの様なものがありますでしょうか? ---test.pl---SHIFT_JIS形式---- $| = 1; $test = "\テ\ス\タ\ー"; $test =~ s/\テ\ス\タ\ー/tester/; print $test; エラーを見ると、 Unmatched [ in regex; marked by <-- HERE in m/\テ\ス\タ\ー <-- HERE / at test.pl line 3. とでます。

  • perl use strict エラーにならない?

    perlの使い方を勉強しているのですが use strict;を記述すると 変数宣言が必要になるということですが 以下のように記述してもエラーになりません。 use strict;を記述すると my $a;がないと$a="Hello";で エラーになるのではないのでしょうか。 ---test.pl---- use strict; $a="Hello"; print $a; -------------- >test.pl Hello > (Windows7, ActivePerl)

    • ベストアンサー
    • Perl
  • 超初心者です

    最近Perlの勉強を本をつかって始めたのですが、 最初の段階でつまずいています。 プログラムは #!/usr/bin/perl #プログラム:hello.pl print "Hello, world!\n"; という本当に実に単純なものなのですが、これをターミナルで実行しようとすると $ hello.pl bash: hello.pl: command not found と表示されてしまします。 $ perl hello.pl Hello, world! ではちゃんと動いています。 Perlの場所は $ find /usr -name perl /usr/bin/perl /usr/doc/db3-devel-3.2.9/ref/perl により間違っていないと思いますし、 chmod 755 hello.pl も行っています。 なにぶん初心者ですので何が他に理由でエラーになるのかわかりません。もしよろしければ、アドバイスをいただけるとうれしいです。 自分はVineLinux2.6を使っていてPerlのバージョンは5.006001です。

    • ベストアンサー
    • Perl
  • Perlからchasenの使い方

    windowsで茶筅を使って形態素解析を行いたいのですがエラーが出てうまくいきません。 ■プログラム(cha.pl) #!/usr/bin/perl -w use Text::ChaSen; $value = '私はとても学校が嫌い。'; $res = Text::ChaSen::getopt_argv('cha.pl','-j'); $str = Text::ChaSen::sparse_tostr($value); print "$str"; exit; ■エラー Can't locate loadable object for module Text::ChaSen in @INC (@INC contains: C:/Perl/lib C:/Perl/site/lib .) at cha.pl line 3 Compilation failed in require at cha.pl line 3. BEGIN failed--compilation aborted at cha.pl line 3. もし良かったらアドバイスお願いします。 Makefile.plのWriteMakefileには 'LD' => 'c++' を追加しました。

    • ベストアンサー
    • Perl
  • WindowsでPerlをする際,1行目の"#! ~"はどのように?

    Perlの参考書・本等ではプログラムファイルの第1行目は #! /usr/local/bin/perl という1行がよく有りますが,WindowsXPを用いている場合では,この1行をどう直せばよいのでしょうか? #! (perl.exeが存在するフォルダのパス) でよいのでしょうか? 私はWindowsXPを使っていて,この1行を使わずにプログラムを書いておりましたので,この1行の意味がよく分かりません。 ある参考書には,"#!はその行に書いたコマンドに,ファイルの残りの部分を渡して実行すると言う性質を持っている"と有りました。だから,試しにfile1.plとfile2.txtを準備し, file1.plの中身  #! (perlの存在するフォルダのパス)\perl.exe  while(<STDIN>){   print;  } file2.txtの中身  hello world として,コマンドプロンプトで file1.pl < file2.txt としたのですが正しく動作しませんでした.(perl file1.pl < file2.txt と入力した場合は正しく"hello world"となりました)

    • ベストアンサー
    • Perl