そーゆーことだったのか!

Windowsパソコンのメモ帳などで作成した文書は、Shift_jisコードでかつ改行コードが[CR][LF]なわけだが、このことを忘れてメモ帳で書いたCGIプログラムをサーバにアップして、「おかしい動かない!?」はよくあることである。がしかし、動く場合もあったりで頭の中が混乱していた。サーバに入って、当該ファイルの改行コードを[CR][LF]から[LF]に替えれば動くのは当たり前なのだが、改行コードが[CR][LF]の場合でも動くCGIと動かないCGIがあるのだ。あれれ????
で、よく見てみると動く方のCGIは先頭のperlコマンドの指定が、
#!/usr/bin/perl -w
となっているのに対して、動かない方のCGIは
#!/usr/bin/perl
である。
でいろいろググって調べると、そーゆーことだったのか!
本来サーバは改行コードは[LF]のみである。であるからして、
/usr/bin/perl -w[CR][LF] → perlの後ろにスペースがあるためperlコマンドとして認識される
 ただ、-w[CR]というオプションがついている。だからperlは一応動く。→でもいいのか?
/usr/bin/perl -w[LF] → 正解
/usr/bin/perl[LF] → 正解
/usr/bin/perl[CR][LF] → perl[CR]というコマンドを探しに行ってエラーとなる
ということなのか!(もし間違っていたらスミマセン)

 

2020年4月

      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
Powered by Movable Type 4.38

このブログ記事について

このページは、アローブックぱそこん教室が2011年10月10日 11:12に書いたブログ記事です。

ひとつ前のブログ記事は「今日も一日ありがとう」です。

次のブログ記事は「今日も一日ありがとう」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

月別 アーカイブ