アプリ版:「スタンプのみでお礼する」機能のリリースについて

-bash: ./test.pl: usr/bin/perl: bad interpreter: というエラーについてです。

掲題のエラーが出てしまい、perlが動かないので困っています。
どうすればいいのか教えてもらえませんでしょうか。

【状況】
VMwareplayer3.1.2上で、CentOS5.5を動かし、デフォルトで入っているperlを使ったファイル「test.pl」を作っています。

test.plを実行しようとしているのですが、以下のエラーメッセージが表示されます。

-bash: ./test.pl: usr/bin/perl: bad interpreter: そのようなファイルやディレクトリはありません

実行した際のコマンドは./test.plです。

test.plの中身は以下。
------------------------------------------------------
#!/usr/bin/perl
use strict;
use warnings;

my $name = "morifuji";

print "Hello ". $name . "\n";
------------------------------------------------------


【確認済み事項】
 test.plの置き場所は/usr/bin/perlです。

 ls -lで権限をみたところ、rwxr-xr-x furukawa root 4096となっている。

 perl test.plと命令するとエラーは返らずちゃんと表示されます。
 (perlを省いて、test.plと命令するとエラーになる。これだと、webから表示されたときに動きません)

 FTPとかで転送すると文字コードの問題でバグが出る、という風な記事を見かけたが、VMwarePlayerなのでそういったやりかたはしていない。

 which perlと命令してperlの場所を探したが、 /usr/bin/ にある。

A 回答 (2件)

>-bash: ./test.pl: usr/bin/perl: bad interpreter: そのようなファイルやディレクトリはありません


というエラーメッセージが出るのなら、

一行目は
#!usr/bin/perl
になってしまっているはずです。逆に、一行目が本当に
#!/usr/bin/perl
であれば、そんなメッセージは出ません。どちらかが間違っています。

目に見えない制御コードが入っている可能性もあるので、
cat -v test.pl
してみてください。cat test.pl と同じ表示になれば正しいです(もしタブ文字があれば^Iと表示されますが)。
    • good
    • 0

共有フォルダを使っていたら、逆に改行コードの問題が出そうですが。



CentOS側で
od -c test.pl
としてみてください。改行コードとか変なコントロールコードとか入ってませんか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!