簡體   English   中英

Perl:當我從命令行運行“perl”時沒有任何反應

[英]Perl: Nothing happens when I run “perl” from the command line

如果我從linux命令行自行運行perl ,則沒有任何反應。 我看到光標向下移動一行,如果我輸入print "Hello, world"; ,仍然沒有任何反應。 我可以從命令行輸入任何內容嗎? 我知道你可以運行perl -e 'print "Hello, world"'; 以及如何創建perl腳本。 只是想知道為什么運行perl本身什么都不做。

輸入以下內容:

$ perl
print "Hello World\n";
Ctrl-D
Hello World
$

最后一行是按住Control鍵並按D鍵。 不輸入Ctrl-D

如果你鍵入stty -a ,你會看到Ctrl-D是他的EOF字符。 這是Perl從STDIN讀取的文件。 那是你要的嗎?

在我的系統(Windows,cmd shell)上,如果我只輸入perl它就開始從STDIN讀取代碼,當我點擊文件末尾Ctrl-Z時,它會執行代碼。 如下所示:

C:\perl>perl
$a = "asd";
print "\$a = '$a'";
^Z
$a = 'asd'
C:\perl>perl
use Data::Dumper;
print Dumper [ 3.14 ];
^Z
$VAR1 = [
          '3.14'
        ];

這很方便,因為通常我不能在沒有引用問題的情況下在cmd shell中使用雙引號。

在Linux命令行中自己運行perlperl將等待你的輸入,例如@ david -w給出的答案

如果您需要交互式Perl環境,可以通過perl -d -e 42在調試模式下啟動perl,或者安裝Perl Shell(psh)

有關詳細信息, perldoc perldebug運行perldoc perlrunperldoc perldebug

嘗試:

perl -e "print 'Hello World';"

否則,只是輸入p​​erl並沒有真正做任何事情。 (我知道,地雷和你的一樣)

我想你正在尋找perl shell ..又名PSH

https://metacpan.org/pod/distribution/psh/doc/psh.pod

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM