print 命令を使う

実行の手順

  1. コマンドプロンプトを起動して、あなたの名前を表示してみて下さい。
    -we は、直接コマンドラインからプログラムをタイプ入力する時のスイッチです。
    スイッチの説明は Perl とは? を参照して下さい。
    [\]は[半角の¥]です。HTML の文字コードによっては[バックスラッシュ]で表示されています。
    perl -we "print(\"あなたの名前\");"
    あなたの名前が正しく表示されたでしょうか?。
    文字化けした方はおられますか?。
  2. 次の文字を表示してみて下さい。
    perl -we "print(\"表示できましたか?\");"
    【実行画面】
    C:\Tmp>perl -we "print(\"表示できましたか?\");"
    侮ヲできましたか?
    C:\Tmp>
  3. 文字化けして「表示」の文字がつぶれています。
    この文章を正しく表示したいときは次のようにタイプして下さい。
    perl -we "print(\"表\示できましたか?\");"
    2015/01/15 Windows8.1 & ActivePerl 5.20.1 の環境で確認しました。

【Program Note】

初心者の方は読み飛ばして下さい。
なぜこのようなことが起こるのでしょう?
それは日本語の文字コードに問題があります。
いったい何が起こっているか調べてみましょう。
次の画像は文字化けしたプログラムを16進ダンプしたものです。
説明の画像

perl では[\]は特別な意味を持つ文字(エスケープコード)です。
[\]は[半角の¥]です。HTML の文字コードによっては[バックスラッシュ]で表示されています。
[""]の中で["]を使うときは[\"]と記述します。
\ の内部コードは16進数で[5C]ですが[表]の文字コードも[955C]で[\]と一致します。
そこで[表]の後に[\]を付け加えて[955C5C]としてやります。
perl では[\\]は[\]の一文字として解釈してくれるのです。
日本語に対応していないソフトを使うときは、全角文字を使うとこのような危険性があることを承知しておいて下さい。
文字コードの説明は Program Guid を参照して下さい。

前田稔の超初心者のプログラム入門
超初心者のプログラム入門(Perl)