เบžเบฒเบชเบฒเบญเบฑเบ‡เบเบดเบ”เบžเบฒเบชเบฒเบเบฃเบฑเปˆเบ‡เปเบญเบชเบ›เบฒเป‚เบเบ™

OnWorks favicon

perldlp - เบญเบญเบ™เบฅเบฒเบเปƒเบ™เบ„เบฅเบฒเบง

เป€เบ›เบตเบ”เปƒเบŠเป‰ perldlp เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเบœเปˆเบฒเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ perldlp เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป„เบ”เป‰เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเป‚เบ”เบเปƒเบŠเป‰เบซเบ™เบถเปˆเบ‡เปƒเบ™เบซเบผเบฒเบเป†เบšเปˆเบญเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบญเบญเบ™เป„เบฅเบ™เปŒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบฑเปˆเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เป‚เบ„เบ‡เบเบฒเบ™:

NAME


perldl - เปเบเบฐเบ‡เปˆเบฒเบเป†เบชเปเบฒเบฅเบฑเบš PDL (เป€เบšเบดเปˆเบ‡ pdl2)

เบชเบฐเบซเบผเบธเบšเบชเบฑเบ‡เบฅเบงเบก


เปƒเบŠเป‰ PDL เปเบšเบšเป‚เบ•เป‰เบ•เบญเบš:

bash$ perldl
pdl> $a = เบฅเปเบฒเบ”เบฑเบš(10) # เบซเบผเบทเบ„เปเบฒเบชเบฑเปˆเบ‡ perl เบซเบผเบท PDL เบญเบทเปˆเบ™เป†

bash$ pdl
pdl> เบžเบดเบก "เบชเบฐเบšเบฒเบเบ”เบต, เป‚เบฅเบ!\n";

เปเบฅเปˆเบ™เบชเบฐเบ„เบฃเบดเบš:

bash$ cat > pdlscript
#!/usr/bin/pdl
เบžเบดเบก "เบชเบฐเบšเบฒเบเบ”เบต, เป‚เบฅเบ!\n";
...

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”


เป‚เบ„เบ‡เบเบฒเบ™ perdl เป€เบ›เบฑเบ™เปเบเบฐเบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบ (เบ‚เบฝเบ™เปƒเบ™ perl) เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เปเบšเบšเป‚เบ•เป‰เบ•เบญเบšเบ‚เบญเบ‡ PDL. เบกเบฑเบ™
เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบ•เบตเบ„เบงเบฒเบกเบซเบกเบฒเบเบ—เบฑเบ™เบ—เบตเบ‚เบญเบ‡ perl
เบ„เปเบฒเบชเบฑเปˆเบ‡เปเบฅเบฐเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ. เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ Perl, เบฅเบงเบกเบ—เบฑเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡ PDL, เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ›เป‰เบญเบ™
เป‚เบ”เบเบเบปเบ‡เบขเบนเปˆเบ—เบตเปˆเปเบ›เป‰เบ™เบžเบดเบกเปเบฅเบฐเบ–เบทเบเบฅเบงเบšเบฅเบงเบกเปเบฅเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบฑเบ™เบ—เบต. syntax เบšเปเปˆเปเบกเปˆเบ™
เบ„เบทเบเบฑเบ™เบเบฑเบš Perl, เปƒเบ™เบเปเบฅเบฐเบ™เบตเบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”, เบเบฒเบ™เบชเบดเป‰เบ™เบชเบธเบ”เบชเบฒเบเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบ—เบฑเบ™เบ—เบต
เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบ„เปเบฒโ€‹เบชเบฑเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เป„เบ”เป‰โ€‹เป€เบ‚เบปเป‰เบฒโ€‹เบกเบฒโ€‹เป€เบ–เบดเบ‡โ€‹เบ•เบญเบ™โ€‹เบ™เบฑเป‰เบ™ (เบšเปเปˆโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบ•เบดเบ”โ€‹เบ•เบฒเบก ';' เปเบกเปˆเบ™โ€‹เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹)โ€‹.

เบ„เบณเบชเบฑเบšเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™ pdl เป€เบ›เบฑเบ™เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบ—เบตเปˆเบกเบตเบ›เบฐเป‚เบซเบเบ”เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ›เบชเบฐเบ„เบฃเบดเบšเป‚เบ”เบเปƒเบŠเป‰ UNIX
shebang ("#!") syntax. เบ™เบตเป‰เปเบกเปˆเบ™เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เปเบฅเบฐ re-executing command-journal
เป„เบŸเบฅเปŒเบˆเบฒเบ perdl.

เป„เบ”เป‰ perdl shell เปเบฅเปˆเบ™เป„เบŸเบฅเปŒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ ("~/.perldlrc") เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญ pre-load
เป‚เบกเบ”เบนเบ™ perl เบซเบผเบทเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก perl เบ—เบปเปˆเบงเป‚เบฅเบ. เบกเบฑเบ™เบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเบเบปเบ™เป„เบเป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบชเปเบฒเบฅเบฑเบš
autoloading perl subroutines. เบกเบตเบเบปเบ™เป„เบเบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เบ„เปเบฒเบชเบฑเปˆเบ‡, เปเบฅเบฐเบญเบทเปˆเบ™เป†เบญเบตเบ
เบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ”เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เป€เบŠเบฑเปˆเบ™: preprocessing เบ„เปเบฒเบชเบฑเปˆเบ‡, เบ—เบฒเบ‡เบฅเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเปƒเบŠเป‰เบ—เบปเปˆเบงเป„เบ›เป€เบŠเบฑเปˆเบ™
เป€เบ›เบฑเบ™ "เบžเบดเบก", เปเบฅเบฐเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ” arbitrary เบ—เบธเบเบ„เบฑเป‰เบ‡เบ—เบตเปˆ prompt เบ–เบทเบเบžเบดเบก.

เบ‚เบถเป‰เบ™เบเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ‚เบญเบ‡เบ—เปˆเบฒเบ™, perdl เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ•เบฑเป‰เบ‡เปƒเบซเป‰เป€เบ›เบฑเบ™เบเบฝเบ” เบซเบผเบท เบšเปเปˆเบชเบปเบ™เปƒเบˆ ^D
(end-of-file) เบ•เบปเบงโ€‹เบญเบฑเบโ€‹เบชเบญเบ™โ€‹เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ—เบตเปˆโ€‹เบ–เบทเบโ€‹เบชเบปเปˆเบ‡โ€‹เบกเบฒโ€‹เบˆเบฒเบ terminalโ€‹, เบซเบผเบทโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบฒเบกโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป€เบฎเบฑเบ”โ€‹เบชเบดเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เบ–เบทเบโ€‹เบ•เป‰เบญเบ‡โ€‹
เป€เบกเบทเปˆเบญเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบšเบฅเบฑเบญเบเบ—เบตเปˆเบเบงเบกเป€เบญเบปเบฒเบซเบผเบฒเบเป€เบชเบฑเป‰เบ™เปเบกเปˆเบ™เบžเบปเบš.

perdl เปเบฅเบฐ pdl เบชเบฐโ€‹เบซเบ™เบฑเบšโ€‹เบชเบฐโ€‹เบซเบ™เบนเบ™โ€‹เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบโ€‹เปƒเบ™โ€‹เบšเบฑเบ™โ€‹เบŠเบตโ€‹เบ„เปเบฒโ€‹เบชเบฑเปˆเบ‡โ€‹เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบซเบ™เบถเปˆเบ‡โ€‹, เป€เบŠเบดเปˆเบ‡โ€‹เป„เบ”เป‰โ€‹เบ–เบทเบโ€‹เบ›เบถเบโ€‹เบชเบฒโ€‹เบซเบฒโ€‹เบฅเบทโ€‹เบขเบนเปˆโ€‹เปƒเบเป‰โ€‹เบ—เบตเปˆโ€‹เบชเบธเบ”โ€‹เบ‚เบญเบ‡โ€‹
เป€เบญเบเบฐเบชเบฒเบ™เบ™เบตเป‰.

เบเบฐเบชเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡ เบ„เบนเปˆเบกเบท & เบญเบญเบ™เป„เบฅเบ™เปŒ เบŠเปˆเบงเบเป€เบซเบผเบทเบญ
เบ„เบนเปˆเบกเบทเบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบดเบ‡ PDL เปเบฅเบฐเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเบญเบญเบ™เป„เบฅเบ™เปŒเปเบกเปˆเบ™เบกเบตเบขเบนเปˆเบˆเบฒเบเบžเบฒเบเปƒเบ™ perdl, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ เบŠเปˆเบงเบเป€เบซเบผเบทเบญ
เปเบฅเบฐ เบ›เบฐเบกเบฒเบ™ เบ„เปเบฒเบชเบฑเปˆเบ‡ (เบŠเบถเปˆเบ‡เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบซเบเปเป‰ ? เปเบฅเบฐ ??.) เบ— เบŠเปˆเบงเบเป€เบซเบผเบทเบญ เบ„เปเบฒเบชเบฑเปˆเบ‡เบขเปˆเบฒเบ‡เบ”เบฝเบง
เบžเบดเบกเบšเบปเบ”เบชเบฐเบซเบผเบธเบšเบ‚เบญเบ‡ syntax เบŠเปˆเบงเบเป€เบซเบผเบทเบญ, เปเบฅเบฐ เบŠเปˆเบงเบเป€เบซเบผเบทเบญ เบˆเบฐเบžเบดเบกเป€เบญเบเบฐเบชเบฒเบ™ POD เบˆเบฒเบ
เป‚เบกเบ”เบนเบ™เบ—เบตเปˆเบ—เปˆเบฒเบ™เบเปˆเบฒเบงเป€เบ–เบดเบ‡ (POD เปเบกเปˆเบ™เบฎเบนเบšเปเบšเบš Perl เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบฑเบ‡เป€เบญเบเบฐเบชเบฒเบ™เปƒเบ™ perl เบ‚เบญเบ‡เบ—เปˆเบฒเบ™
เบฅเบฐเบซเบฑเบ”; เป€เบšเบดเปˆเบ‡ perlpod เบชเปเบฒเบฅเบฑเบšเบฅเบฒเบเบฅเบฐเบญเบฝเบ”).

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบฅเบงเบกเป€เบญเบปเบฒเป€เบญเบเบฐเบชเบฒเบ™ POD เปƒเบ™ autoload subroutines เบ‚เบญเบ‡เบ—เปˆเบฒเบ™ (เป€เบšเบดเปˆเบ‡ เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡ เบเบปเบ™เป„เบ เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰),
เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เบฑเบ‡เบชเบญเบ‡ เบŠเปˆเบงเบเป€เบซเบผเบทเบญ เปเบฅเบฐ เบ›เบฐเบกเบฒเบ™ เบˆเบฐเบŠเบญเบเบซเบฒเบกเบฑเบ™เปเบฅเบฐเบชเบฒเบกเบฒเบ”เบˆเบฑเบ”เบฎเบนเบšเปเบšเบšเปเบฅเบฐเบชเบฐเปเบ”เบ‡เบกเบฑเบ™เบ•เบฒเบกเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™.

เบ›เบฐโ€‹เบซเบงเบฑเบ”โ€‹เบชเบฒเบ” เบเบปเบ™เป„เบ
เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเป‚เบกเบ”เบนเบ™ perl ReadLines เปเบฅเบฐ ReadKeys เบ•เบดเบ”เบ•เบฑเป‰เบ‡, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ perdl เบชเบฐ เปœเบฑเบš เบชเบฐ เปœเบนเบ™ เบ
เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบปเบ™เป„เบเบเบฒเบ™เปเบเป‰เป„เบ‚เป€เบชเบฑเป‰เบ™เป‚เบ”เบเปƒเบŠเป‰เบ›เบธเปˆเบกเปเบเป‰เป„เบ‚เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบš emacs. 500 เบชเบธเบ”เบ—เป‰เบฒเบ
เบ„เปเบฒเบชเบฑเปˆเบ‡เบˆเบฐเบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เป„เบŸเบฅเปŒเบชเบฐเป€เบซเบกเบต .perldl_hist เปƒเบ™โ€‹เบšเบฑเบ™โ€‹เบŠเบตโ€‹เบฅเบฒเบโ€‹เบเบฒเบ™โ€‹เป€เบฎเบทเบญเบ™โ€‹เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹เบฅเบฐโ€‹เบซเบงเปˆเบฒเบ‡โ€‹
เบเบญเบ‡เบ›เบฐเบŠเบธเบก. เบ•เบฑเป‰เบ‡ $PERLDL::HISTFILESIZE เป€เบžเบทเปˆเบญเบ›เปˆเบฝเบ™เบˆเบณเบ™เบงเบ™เปเบ–เบงเบ—เบตเปˆเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰. เบ„เปเบฒเบชเบฑเปˆเบ‡ "l
[number]" เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบซเบฑเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ "เบˆเปเบฒเบ™เบงเบ™" เบชเบธเบ”เบ—เป‰เบฒเบเบ—เบตเปˆเบ—เปˆเบฒเบ™เบžเบดเบกเบšเปˆเบญเบ™เบ—เบตเปˆ "เบˆเปเบฒเบ™เบงเบ™" เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™ 20.

เบ•เบปเบงเบขเปˆเบฒเบ‡:

bash$ perldl
เป€เบ›เบตเบ”เปƒเบŠเป‰เบชเบฒเบเบญเปˆเบฒเบ™เปเบฅเป‰เบง
pdl> $a = rfits "foo.fits"
BITPIX = -32 เบ‚เบฐเบซเบ™เบฒเบ” = 88504 pixels
เบเบณเบฅเบฑเบ‡เบญเปˆเบฒเบ™ 354016 bytes
BSCALE = && BZERO =

pdl> เบšเบฑเบ™เบ—เบถเบเบฎเบนเบšเบžเบฒเบš($a+400)
เบชเบฐเปเบ”เบ‡เบฎเบนเบšเบžเบฒเบš 299 x 296 เบˆเบฒเบ 4.6939525604248 เบซเบฒ 9.67116928100586 ...

เบ„เปเบฒเบชเบฑเปˆเบ‡ เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”
เบ–เป‰เบฒเบ—เปˆเบฒเบ™เปƒเบชเปˆเบ„เปเบฒเบชเบฑเปˆเบ‡เบ‡เปˆเบฒเบเป†เบขเบนเปˆเบ—เบตเปˆ perdl เป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡, เบกเบฑเบ™เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบฑเบ™เบ—เบตเปƒเบ™ a
Perl "eval()". เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเปเบกเปˆเบ™เป€เบเบทเบญเบšเบ„เบทเบเบฑเบ™เบเบฑเบšเบงเปˆเบฒเบžเบฒเบเปƒเบ™เบชเบฐเบ„เบดเบš perl, เบเบฑเบš
เบšเบฒเบ‡เบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™:

ยท $_ เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเป€เบเบฑเบšเบฎเบฑเบเบชเบฒเป„เบงเป‰เปƒเบ™เบ—เบปเปˆเบงเบชเบฒเบ

$_ เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ–เบทเป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เปƒเบ™เบ•เบญเบ™เบ•เบปเป‰เบ™เบ‚เบญเบ‡
เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ‚เบญเบ‡เปเบ•เปˆเบฅเบฐเปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡, $_ เบกเบตเบ„เปเบฒเบชเบฑเปˆเบ‡เบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡. เปƒเบŠเป‰เบ•เบปเบงเปเบ›เบญเบทเปˆเบ™เป†
เบซเบผเบฒเบเบเบงเปˆเบฒ $_ เป€เบžเบทเปˆเบญเป€เบเบฑเบšเบ„เปˆเบฒเบ‚เป‰เบฒเบกเปเบ–เบง.

ยท เบ‚เบญเบšเป€เบ‚เบ”เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบฎเบฑเบเบชเบฒเป„เบงเป‰เปƒเบ™เบ—เบปเปˆเบงเบชเบฒเบ

เปเบ•เปˆเบฅเบฐเป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบขเบนเปˆเปƒเบ™เบšเบฅเบฑเบญเบ "eval" เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบžเบฒเบเปƒเบ™ perl, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบ‚เบญเบšเป€เบ‚เบ”
เบ„เปเบฒเบชเบฑเปˆเบ‡เป€เบŠเบฑเปˆเบ™ "เบ‚เบญเบ‡เบ‚เป‰เบญเบ" เปเบฅเบฐ "เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™" เบญเบฒเบ”เบˆเบฐเบšเปเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เปเบ™เปˆเบ™เบญเบ™ - เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ,
เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ›เบฐเบเบฒเบ”เบ•เบปเบงเปเบ›เบ”เป‰เบงเบ "เบ‚เบญเบ‡เบ‚เป‰เบญเบ", เบกเบฑเบ™เปเบกเปˆเบ™เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบ‚เบญเบ‡เป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ
เบ—เบตเปˆเบ—เปˆเบฒเบ™เบžเบดเบกเบ„เปเบฒเบชเบฑเปˆเบ‡ "my", เบŠเบถเปˆเบ‡เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบกเบฑเบ™เบˆเบฐ evaporate เบเปˆเบญเบ™เบ•เปเปˆเป„เบ›
เบเบฒเบ™เป€เบ•เบทเบญเบ™เปเบกเปˆเบ™เบžเบดเบกเบญเบญเบ. (เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เบ•เบปเบงเปเบ› "เบ‚เบญเบ‡เบ‚เป‰เบญเบ" เปƒเบ™เบซเบผเบฒเบเปเบ–เบงเบซเบผเบทเป€เบžเบทเปˆเบญเปเบเบ
เบ„เปˆเบฒเบžเบฒเบเปƒเบ™เป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบ”เบฝเบง, เปเบ™เปˆเบ™เบญเบ™).

เบซเบกเบฒเบเป€เบซเบ”: pdl2 เบฎเบฑเบเบชเบฒเบ‚เบญเบšเป€เบ‚เบ” lexical เบฅเบฐเบซเบงเปˆเบฒเบ‡เป€เบชเบฑเป‰เบ™.

ยท เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เปเบกเปˆเบ™โ€‹เบ—เบฑเบ™โ€‹เบ—เบตโ€‹เบ—เบฑเบ™โ€‹เปƒเบ”โ€‹

เบžเบฒเบเปƒเบ•เป‰เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบชเปˆเบงเบ™เปƒเบซเบเปˆ, เบ—เบฑเบ™เบ—เบตเบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบดเป‰เบ™เบชเบธเบ”เปเบ–เบงเบ‚เบญเบ‡เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™, เป€เบชเบฑเป‰เบ™เบˆเบฐเบ–เบทเบเบงเบดเป€เบ„เบฒเบฐเปเบฅเบฐ
เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹. เบ™เบตเป‰เบˆเบฐเบ—เปเบฒเบฅเบฒเบเบเบฒเบ™เป€เบžเบดเปˆเบ‡เบžเบฒเบญเบฒเป„เบชเบ›เบปเบเบเบฐเบ•เบดเบ‚เบญเบ‡ Perl เบเปˆเบฝเบงเบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบฒเบเบˆเปเป‰เบฒเบˆเบธเบ”เป€เบ›เบฑเบ™เบ•เบปเบงเบ‚เบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡.
เบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบชเบญเบ‡เปเบ–เบง

เบžเบดเบก "เบชเบฐเบšเบฒเบเบ”เบต",
"เป‚เบฅเบ";

เบžเบดเบกเบ„เปเบฒเบงเปˆเบฒ "เบชเบฐเบšเบฒเบเบ”เบตเป‚เบฅเบ" เปƒเบ™ Perl, เปเบ•เปˆ (เบžเบฒเบเปƒเบ•เป‰เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบชเปˆเบงเบ™เปƒเบซเบเปˆ) "เบชเบฐเบšเบฒเบเบ”เบต" เปƒเบ™
perdl.

ยท เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบซเบผเบฒเบโ€‹เป€เบชเบฑเป‰เบ™โ€‹

เปƒเบ™โ€‹เบฎเบนเบšโ€‹เปเบšเบšโ€‹เบซเบผเบฒเบโ€‹เป€เบชเบฑเป‰เบ™ (เบ—เบตเปˆโ€‹เบ–เบทเบโ€‹เป€เบ›เบตเบ”โ€‹เปƒเบŠเป‰โ€‹เบ‡เบฒเบ™โ€‹เป‚เบ”เบโ€‹เบ„เปˆเบฒโ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹, เป€เบšเบดเปˆเบ‡โ€‹ Shell เบ•เบปเบงเปเบ›, เบ‚เป‰เบฒเบ‡โ€‹เบฅเบธเปˆเบกโ€‹เบ™เบตเป‰โ€‹) perdl
เบ„เบปเป‰เบ™โ€‹เบซเบฒโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ„เบปเป‰เบ™โ€‹เบซเบฒโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบเปเปˆโ€‹เบชเป‰เบฒเบ‡โ€‹เบ„เป‰เบฒเบโ€‹เบ„เบท blocks เบเบฑเบš curly bracesโ€‹, เบงเบปเบ‡โ€‹เป€เบฅเบฑเบšโ€‹, quotesโ€‹,
เปเบฅเบฐเบ•เบปเบงเบ‚เบฑเป‰เบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡. เบ–เป‰เบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบ›เปˆเบญเบโ€‹เบเบฒเบ™โ€‹เบเปเปˆโ€‹เบชเป‰เบฒเบ‡โ€‹เบ”เบฑเปˆเบ‡โ€‹เบเปˆเบฒเบงโ€‹เป€เบ›เบตเบ”, perdl เบเบญเบกเบฎเบฑเบšเบชเบฒเบเบซเบผเบฒเบ
เบ‚เบญเบ‡เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเบปเบ™เบเบงเปˆเบฒเบ—เปˆเบฒเบ™เบˆเบฐเบ›เบดเบ”เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡ เบซเบผเบทเบชเบดเป‰เบ™เบชเบธเบ”เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบซเบผเบฒเบเปเบ–เบงเบขเปˆเบฒเบ‡เบˆเบฐเปเบˆเป‰เบ‡
^D. เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡, เบ›เบฐเป‚เบซเบเบ

{เบžเบดเบก "เบชเบฐเบšเบฒเบเบ”เบต",
"เป‚เบฅเบ"; }

เบˆเบฐเบžเบดเบก "เบชเบฐเบšเบฒเบเบ”เบตเป‚เบฅเบ" เบˆเบฒเบ Perl เบซเบผเบท (เปƒเบ™เบฎเบนเบšเปเบšเบšเบซเบผเบฒเบเปเบ–เบง) perdl.

เบเบฒเบ™โ€‹เป€เบ•เบทเบญเบ™โ€‹เป„เบž: เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบซเบผเบฒเบเปเบ–เบงเปƒเบŠเป‰เบ‚เปเป‰เบ„เบงเบฒเบกเบ‚เบญเบ‡ Damian Conway ::เป‚เบกเบ”เบนเบ™เบชเบปเบกเบ”เบธเบ™, เป€เบŠเบดเปˆเบ‡
เบกเบตเบ‚เปเป‰เบšเบปเบเบžเปˆเบญเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡ - เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบซเบผเบญเบเบฅเบงเบ‡เป„เบ”เป‰เป‚เบ”เบเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบ„เปเบฒเป€เบงเบปเป‰เบฒเป€เบŠเบฑเปˆเบ™ "q/.../",
เบฅเบงเบกเป€เบญเบปเบฒเป€เบญเบเบฐเบชเบฒเบ™ POD, เบซเบผเบฒเบเปเบ–เบง "<<" quotes, เปเบฅเบฐเบšเบฒเบ‡เบญเบฑเบ™เบ—เบตเปˆเปเบ›เบเบ›เบฐเบซเบผเบฒเบ”เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ.
เบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆ "m/.../" เปเบฅเบฐ "s/.../.../" เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เปƒเบŠเป‰ ^D เป€เบžเบทเปˆเบญเบ›เบดเบ”
เบญเบญเบโ€‹เบˆเบฒเบโ€‹เบเบฒเบ™โ€‹เบเปเปˆโ€‹เบชเป‰เบฒเบ‡โ€‹เบซเบผเบฒเบโ€‹เป€เบชเบฑเป‰เบ™โ€‹เปเบฅเบฐโ€‹เบšเบฑเบ‡โ€‹เบ„เบฑเบšโ€‹เปƒเบซเป‰โ€‹เบเบฒเบ™โ€‹เบชเบฑเบ‡โ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹.

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบฎเบฑเบเบชเบฒเบžเบถเบ”เบ•เบดเบเปเบฒเบ™เบตเป‰เบขเบนเปˆเปƒเบ™เบชเบฐเบ„เบดเบš (เบ•เบปเบงเบขเปˆเบฒเบ‡เบเบฒเบ™เบซเบผเบดเป‰เบ™เบงเบฒเบฅเบฐเบชเบฒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡
เป„เบŸเบฅเปŒ; เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เบชเป‰เบฒเบ‡เบซเบ™เบถเปˆเบ‡), เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰ pdl เปเบ—เบ™โ€‹เบ—เบตเปˆ perl เป€เบ›เบฑเบ™เบ™เบฒเบเบžเบฒเบชเบฒ
เปƒเบ™เป€เบชเบฑเป‰เบ™ shebang เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบ‚เบญเบ‡ script.

เบชเบดเป‰เบ™เบชเบธเบ” "perld"
เบŠเปˆเบงเบ‡เป€เบงเบฅเบฒ "perldl" เบชเบฒเบกเบฒเบ”เบ–เบทเบเบขเบธเบ”เบ”เป‰เบงเบเบ„เปเบฒเบชเบฑเปˆเบ‡เปƒเบ”เป† "เบญเบญเบ", "เบญเบญเบ" เบซเบผเบทเบ„เปเบฒเบชเบฑเปˆเบ‡.
shorthands "x" เบซเบผเบท "q". เบ–เป‰เบฒเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™ EOF เบ–เบทเบเป€เบ›เบตเบ” (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™) เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบžเบดเบก ^D เป„เบ”เป‰
เบขเบนเปˆเปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡.

เบ–เป‰เบฒเบเบฒเบ™เบ›เป‰เบญเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบšเปเปˆเปเบกเปˆเบ™ terminal (เบ•เบปเบงเบขเปˆเบฒเบ‡เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เปเบฅเปˆเบ™เบˆเบฒเบเบ„เปเบฒเบชเบฑเปˆเบ‡
เป€เบญเบเบฐเบชเบฒเบ™เบงเบฒเบฅเบฐเบชเบฒเบ™), เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ EOF เบชเบฐเป€เบซเบกเบตเบˆเบฐเบขเบธเบ”เป€เบŠเบปเบฒ perdl.

เบชเบดเป‰เบ™เบชเบธเบ” เบ„เปเบฒเบชเบฑเปˆเบ‡ (Ctrl-C เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™
เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เบžเบฒเบเปƒเบ™ "perldl" เบชเบฒเบกเบฒเบ”เบ–เบทเบเบเบปเบเป€เบฅเบตเบเบเปˆเบญเบ™เป„เบงเบญเบฑเบ™เบ„เบงเบ™เป‚เบ”เบเปƒเบŠเป‰ "Ctrl-C" (เบซเบผเบท
เบญเบฑเบ™เปƒเบ”เบเปเป„เบ”เป‰เบ•เบฒเบกเบฅเบณเบ”เบฑเบšเบซเบผเบฑเบเบ—เบตเปˆเบชเบปเปˆเบ‡เบชเบฑเบ™เบเบฒเบ™ INT เป„เบ›เบซเบฒเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบ‚เบญเบ‡เบ—เปˆเบฒเบ™). เบชเบฐเบซเบ™เบญเบ‡เบ‚เบญเบ‡เบ—เปˆเบฒเบ™
เบฅเบฐเบซเบฑเบ” PDL เบšเปเปˆเป„เบ”เป‰เบฅเบฐเป€เบฅเบตเบ "sigint"s เบ™เบตเป‰เบ„เบงเบ™เบˆเบฐเบ–เบดเป‰เบกเบ—เปˆเบฒเบ™เบเบฑเบšเบ„เบทเบ™เป„เบ›เบšเปˆเบญเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ "perldl".
เบงเปˆเบญเบ‡เป„เบง:

pdl> $result = start_lengthy_computation()

เบเบงเบ”เบžเบปเบš Ctrl-C

pdl>

เบฅเบฑเบ” เปเบฅเบฐ alias
ยท shell aliases "p" เป€เบ›เบฑเบ™เบฎเบนเบšเปเบšเบšเบชเบฑเป‰เบ™เบชเบฐเบ”เบงเบเบ‚เบญเบ‡ "เบžเบดเบก", eg

pdl > p ones 5,3

[
[1 1 1 1 1]
[1 1 1 1 1]
[1 1 1 1 1]
]

ยท "q" เปเบฅเบฐ "x" เปเบกเปˆเบ™เบชเบฑเป‰เบ™เบชเปเบฒเบฅเบฑเบš "เป€เบŠเบปเบฒ".

ยท "l" เบฅเบฒเบเบŠเบทเปˆ buffer เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”

pdl> l # เบฅเบฒเบเบŠเบทเปˆ 20 เบ„เปเบฒเบชเบฑเปˆเบ‡เบชเบธเบ”เบ—เป‰เบฒเบ

pdl> l 40 # เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบชเบธเบ”เบ—เป‰เบฒเบ 40 เบ„เปเบฒเบชเบฑเปˆเบ‡

ยท "?" เป€เบ›เบฑเบ™เบ™เบฒเบกเปเบเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญ

pdl> ? pdl2 # เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเบชเปเบฒเบฅเบฑเบš pdl2 shell เปƒเบซเบกเปˆ

ยท "??" เป€เบ›เบฑเบ™เบ™เบฒเบกเปเบเบ‡เบชเปเบฒเบฅเบฑเบš apropos

pdl > ?? PDL::Doc

ยท help, apropos, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เปเบฅเบฐ sig: เบ„เปเบฒเบชเบฑเบšเบ•เปˆเบฒเบ‡เป†เบ—เบฑเบ‡เบซเบกเบปเบ”เบซเบผเบฑเบ‡เบˆเบฒเบเบ„เปเบฒเบชเบฑเปˆเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เปƒเบŠเป‰ verbatim เปเบฅเบฐเบšเปเปˆ
เบ›เบฐเป€เบกเบตเบ™เป‚เบ”เบ perl. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ‚เบฝเบ™, เบ•เบปเบงเบขเปˆเบฒเบ‡,

pdl> เบŠเปˆเบงเบ

เปเบ—เบ™โ€‹เบ—เบตเปˆ

pdl> เบŠเปˆเบงเบ 'เบŠเปˆเบงเบ'

เป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™
perdl เปเบฅเบฐ pdl เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡เบซเบผเบฒเบเป€เบžเบทเปˆเบญเบ›เบฑเบšเบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡เป€เบŠเบ”เบŠเบฑเบ™.
เบชเปˆเบงเบ™เปƒเบซเบเปˆเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเปเบกเปˆเบ™เบ—เบฝเบšเป€เบ—เบปเปˆเบฒเบเบฑเบšเบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ pdl> เบ”เปˆเบงเบ™. เบžเบงเบโ€‹เป€เบ‚เบปเบฒโ€‹เปเบกเปˆเบ™:

- เป‚เบเบ”
เป‚เบซเบฅเบ” OpenGL เป€เบกเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ shell (เป‚เบกเบ”เบนเบ™ OpenGL perl, เบ—เบตเปˆเบกเบตเปƒเบซเป‰เบˆเบฒเบ
CPAN เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡). เบญเบฑเบ™เบ™เบตเป‰เป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เป€เบซเบ”เบเบฒเบ™เบเบฒเบ™เบญเปˆเบฒเบ™เปเบ–เบง. เบขเปˆเบฒเปƒเบŠเป‰เบเบฑเบš
-tk.

-tk Load Tk เป€เบกเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ shell (เป‚เบกเบ”เบนเบ™ perl Tk, เบ—เบตเปˆเบกเบตเบขเบนเปˆเปƒเบ™ CPAN เบ•เป‰เบญเบ‡
เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ•เบดเบ”โ€‹เบ•เบฑเป‰เบ‡). เบญเบฑเบ™เบ™เบตเป‰เป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เป€เบซเบ”เบเบฒเบ™เบเบฒเบ™เบญเปˆเบฒเบ™เปเบ–เบง. เบขเปˆเบฒเปƒเบŠเป‰เบเบฑเบš -glut.

-f เป„เบŸเบฅเปŒ
เป‚เบซเบผเบ”เป„เบŸเบฅเปŒเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ‚เปเป‰เบกเบนเบ™เบœเบนเป‰เปƒเบŠเป‰เปƒเบ”เป†. เบ„เบงเบฒเบกโ€‹เบœเบดเบ”โ€‹เบžเบฒเบ”โ€‹เปƒเบ™โ€‹เบฅเบฐโ€‹เบซเบงเปˆเบฒเบ‡โ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบ‚เบญเบ‡โ€‹
เป„เบŸเบฅเปŒเปเบกเปˆเบ™เป€เบชเบเบŠเบตเบงเบดเบ”.

-w เปเบฅเปˆเบ™เบ”เป‰เบงเบเบ‚เปเป‰เบ„เบงเบฒเบกเป€เบ•เบทเบญเบ™ (เป€เบŠเบฑเปˆเบ™: เบเบฒเบ™เป€เบ•เบทเบญเบ™เป„เบž perl "-w" เบ›เบปเบเบเบฐเบ•เบด) เป€เบ›เบตเบ”.

-M เป‚เบกเบ”เบนเบ™
เป‚เบซเบผเบ”เป‚เบกเบ”เบนเบ™เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ‚เปเป‰เบกเบนเบ™เบœเบนเป‰เปƒเบŠเป‰เปƒเบ”เป†. เบ›เบฝเบšเบ—เบฝเบš "perl" เบ—เบตเปˆเบชเบญเบ”เบ„เป‰เบญเบ‡เบเบฑเบ™
เบชเบฐเบซเบผเบฑเบš.

-m เป‚เบกเบ”เบนเบ™
เบ–เบญเบ”เป‚เบกเบ”เบนเบ™เบญเบญเบเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ‚เปเป‰เบกเบนเบ™เบœเบนเป‰เปƒเบŠเป‰เปƒเบ”เป†.

-I directory
เป€เบžเบตเปˆเบกเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเปƒเบชเปˆเป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบฅเบงเบก. (เป€เบŠเบฑเปˆเบ™: @INC array) เบ›เบฝเบšเบ—เบฝเบš "perl" เบ—เบตเปˆเบชเบญเบ”เบ„เป‰เบญเบ‡เบเบฑเบ™
เบชเบฐเบซเบผเบฑเบš.

-V เบžเบดเบกเบšเบปเบ”เบชเบฐเบซเบผเบธเบšเบ‚เบญเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ PDL. เบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เบ„เบงเบ™เบˆเบฐเบ–เบทเบเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบšเปเบกเบ‡เป„เบกเป‰ PDL เปƒเบ”เป†
เบฅเบฒเบเบ‡เบฒเบ™. เบ›เบฝเบšเบ—เบฝเบšเบ›เบธเปˆเบก "perl" เบ—เบตเปˆเบชเบญเบ”เบ„เป‰เบญเบ‡เบเบฑเบ™.

เป„เบ”เป‰ เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบฅเบฐเบšเบปเบš เป€เบญเบเบฐเบชเบฒเบ™ ~/.perldlrc
เบ–เป‰เบฒเป„เบŸเบฅ ~/.perldlrc เบžเบปเบšเป€เบซเบฑเบ™เบงเปˆเบฒเบกเบฑเบ™เปเบกเปˆเบ™เบกเบฒเบˆเบฒเบเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบžเบทเปˆเบญเป‚เบซเบฅเบ”เป‚เบกเบ”เบนเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบ•เบฑเป‰เบ‡
Shell variables, เปเบฅเบฐเบญเบทเปˆเบ™เป†. เบ–เป‰เบฒเบšเปเปˆเบžเบปเบšเป„เบŸเบฅเปŒเปเบˆเบเบขเบฒเบ PDL/default.perldlrc is
เบญเปˆเบฒเบ™เปเบ—เบ™. เบ™เบตเป‰เป‚เบซเบผเบ”เป‚เบกเบ”เบนเบ™เบ•เปˆเบฒเบ‡เป†เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เปเบฅเบฐเบฎเบฑเบšเบ›เบฐเบเบฑเบ™
เบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบš v1.11. เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ—เปˆเบฒเบ™โ€‹เบšเปเปˆโ€‹เบกเบฑเบโ€‹เบ™เบตเป‰โ€‹เปเบฅเบฐโ€‹เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบŠเบธเบ”โ€‹เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹เบชเบฐโ€‹เบ”เบงเบโ€‹เบชเบฐโ€‹เบšเบฒเบโ€‹เบซเบผเบฒเบโ€‹
เป‚เบกเบ”เบนเบ™ favorite เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡เบ‡เปˆเบฒเบเบ”เบฒเบเบชเป‰เบฒเบ‡เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบญเบ‡ ~/.perldlrc. เบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบ
เบกเบตเบขเบนเปˆเปเบฅเป‰เบง PDL/default.perldlrc เป€เบ›เบฑเบ™เปเบกเปˆเปเบšเบšเป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบกเบฑเบ™เบˆเบฐเบšเปเปˆเบกเบตเปเบซเบผเปˆเบ‡เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เบ›เปˆเบฝเบ™เปเบ—เบ™
เบกเบฑเบ™โ€‹เบเบฑเบšโ€‹เบชเบฐโ€‹เบšเบฑเบšโ€‹เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹เป€เบญเบ‡โ€‹.

เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบ™เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบซเบผเบฒเบเป„เบŸเบฅเปŒ local.perldlrc (เปƒเบ™เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ›เบฐเบˆเบธเบšเบฑเบ™) เปเบกเปˆเบ™
เบ—เบตเปˆโ€‹เบกเบฒโ€‹เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบžเบปเบšโ€‹เป€เบซเบฑเบ™โ€‹. เบ™เบตเป‰เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป‚เบซเบฅเบ”เป‚เบกเบ”เบนเบ™เปเบฅเบฐเบเปเบฒเบ™เบปเบ” subroutines เบชเปเบฒเบฅเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™เปƒเบ™
เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ›เบฐเบˆเบธเบšเบฑเบ™.

เบŠเบทเปˆเป„เบ”เป‰เบ–เบทเบเป€เบฅเบทเบญเบเป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบกเบฑเบ™เบ–เบทเบเบžเบปเบšเป€เบซเบฑเบ™เป„เบŸเบฅเปŒเบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ‡เป„เบงเป‰เปเบกเปˆเบ™เบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบขเบนเปˆเปƒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰
เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™.

เป„เบŸเบฅเปŒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ›เบปเบเบเบฐเบ•เบดเบ„เบงเบ™เบ›เบฐเบเบญเบšเบกเบต "เปƒเบŠเป‰ PDL::AutoLoader;", เบ„เบทเบเบฑเบ™เบเบฑเบšเบซเบผเบฒเบเป†เบญเบฑเบ™เบ—เบตเปˆเบ‡เบฒเบกเบเบงเปˆเบฒ
เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบˆเบฐเบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบเป‚เบ”เบเบšเปเปˆเบกเบตเบกเบฑเบ™.

Shell เบ•เบปเบงเปเบ›
เบ•เบปเบงเปเบ› Shell: (เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹: เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ—เปˆเบฒเบ™โ€‹เบšเปเปˆโ€‹เบกเบฑเบโ€‹เบเบฒเบ™โ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เปƒเบซเป‰โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เปƒเบ™โ€‹ ~/.perldlrc)

ยท $PERLDL::ESCAPE - เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ '#'

เป€เบชเบฑเป‰เบ™เปƒเบ”เบเปเป„เบ”เป‰เบ—เบตเปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบ•เบปเบงเบฅเบฐเบ„เบญเบ™เบ™เบตเป‰เบˆเบฐเบ–เบทเบเบ–เบทเบงเปˆเบฒเป€เบ›เบฑเบ™เบเบฒเบ™เบซเบฅเบปเบšเปœเบตเบˆเบฒเบเป€เบ›เบทเบญเบ. เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™
เบ–เบทเบเป€เบฅเบทเบญเบเป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เบซเบ™เบตเบฅเบฐเบซเบฑเบ”เบˆเบฒเบเบ™เบฒเบเบžเบฒเบชเบฒ perl เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™.

ยท $PERLDL::HISTFILESIZE - เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ 500

เบ™เบตเป‰เปเบกเปˆเบ™เบˆเปเบฒเบ™เบงเบ™เปเบ–เบงเบ‚เบญเบ‡เบ›เบฐเบซเบงเบฑเบ”เบ„เปเบฒเบชเบฑเปˆเบ‡ perldl shell เบ—เบตเปˆเบˆเบฐเบฎเบฑเบเบชเบฒ.

ยท $PERLDL::PAGER - เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ "เบซเบผเบฒเบ"

เป‚เบ„เบ‡เบเบฒเบ™เบžเบฒเบเบ™เบญเบเป€เบžเบทเปˆเบญเบเบฑเปˆเบ™เบ•เบญเบ‡เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบ‚เบญเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡. เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ "เบซเบผเบฒเบ" เบžเบดเบกเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบซเบ™เบถเปˆเบ‡
เบˆเปเบชเบฐเปเบ”เบ‡เบœเบปเบ™เปƒเบ™เป€เบงเบฅเบฒ. เปƒเบ™ Unix, เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ Page(1) เปเบฅเบฐ $PERLDL::PAGER เบเบฑเบš "tee -a outfile"
เบˆเบฐเบฎเบฑเบเบชเบฒเบšเบฑเบ™เบ—เบถเบเบ‚เบญเบ‡เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เป‚เบ”เบเบ„เปเบฒเบชเบฑเปˆเบ‡ perldl เบ•เปเปˆเบกเบฒ (เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™
เบซเบ™เป‰เบฒ).

ยท $PERLDL::PROMPT - เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ 'pdl> '

เบžเบฝเบ‡โ€‹เบžเปโ€‹เบ—เบตเปˆโ€‹เป€เบงเบปเป‰เบฒโ€‹เบงเปˆเบฒโ€‹เปเบ•เปˆโ€‹เบเบฑเบ‡โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เป€เบ›เบฑเบ™ subroutine เบเบฐโ€‹เบชเบฒเบ™โ€‹เบญเป‰เบฒเบ‡โ€‹เบญเบตเบ‡โ€‹เป€เบŠเบฑเปˆเบ™ $PERLDL::PROMPT =
sub {join(':',(gmtime)[2,1,0]).'> '} เป€เบญเบปเบฒเป€เบงเบฅเบฒเบ›เบฐเบˆเบธเบšเบฑเบ™เป€เบ‚เบปเป‰เบฒเปƒเบ™เบเบฒเบ™เป€เบ•เบทเบญเบ™.

ยท $PERLDL::MULTI - เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ 1

เบ–เป‰เบฒเบญเบฑเบ™เบ™เบตเป‰เบ–เบทเบเบ•เบฑเป‰เบ‡เป€เบ›เบฑเบ™เบ„เปˆเบฒเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡, perldl เบˆเบฐเบงเบดเป€เบ„เบฒเบฐเบซเบผเบฒเบเปเบ–เบง perl blocks: your
เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบšเปเปˆเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบˆเบปเบ™เบเบงเปˆเบฒเบ—เปˆเบฒเบ™เบˆเบฐเบชเปเบฒเป€เบฅเบฑเบ”เป€เบชเบฑเป‰เบ™เบ—เบตเปˆเบšเปเปˆเบกเบตเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบเบธเปˆเบกเบ—เบตเปˆเบเบฑเบ‡เบ„เป‰เบฒเบ‡เบ„เบฒ
(เป€เบŠเบฑเปˆเบ™: เบงเบปเบ‡เบขเบทเบก, เบšเบฅเบฑเบญเบ, เบงเบปเบ‡เป€เบฅเบฑเบš, เบซเบผเบทเบงเบปเบ‡เป€เบฅเบฑเบš) เบเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆ. เบชเบฒเบเบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡
เบกเบตเบเบฒเบ™เบเบฐเบ•เบธเป‰เบ™เป€เบ•เบทเบญเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบ—เบตเปˆเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบซเบฑเบ™เบงเปˆเบฒเบ•เบปเบงเบ‚เบฑเป‰เบ™เปƒเบ”เบเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆ.

เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเบ™เบตเป‰เบšเปเปˆเปเบกเปˆเบ™ (เบเบฑเบ‡!) เป€เบ›เบฑเบ™ perl parser เบชเบปเบกเบšเบนเบ™. เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ, เบ‚เปเป‰เบ„เบงเบฒเบก::เบชเบปเบกเบ”เบธเบ™
เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบชเบฒเบกเบฒเบ”เบšเปเปˆเบชเบปเบ™เปƒเบˆเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡เป€เบŠเบฑเปˆเบ™ "q/ ... /" เบžเบฒเบเปƒเบ™เป€เบชเบฑเป‰เบ™, เปเบ•เปˆเบšเปเปˆเปเบกเปˆเบ™
เป€เบžเบทเปˆเบญเปƒเบซเป‰เบชเบฒเบกเบฒเบ”เบ‚เบฐเบซเบเบฒเบเบžเบงเบเบกเบฑเบ™เบ‚เป‰เบฒเบกเบชเบฒเบเป„เบ”เป‰. เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™, เบšเปเปˆเบกเบตเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบš '<<'
เบœเบนเป‰เบ›เบฐเบเบญเบšเบเบฒเบ™.

เบชเบฐเบ•เบฃเบดเบ‡เปเบšเบšเบ—เบณเบกเบฐเบ”เบฒเบซเบผเบฒเบเปเบ–เบง เปเบฅเบฐเบเบฒเบ™เบˆเบฑเบ”เบเบธเปˆเบก {}, [], เปเบฅเบฐ () เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเปœเบฑเบšเบชเบฐเปœเบนเบ™เป€เบ›เบฑเบ™เบขเปˆเบฒเบ‡เบ”เบต.

ยท $PERLDL::NO_EOF - เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ 0 / 1 เปƒเบ™ MSWin32

เบ›เป‰เบญเบ‡เบเบฑเบ™เบเบฒเบ™เปƒเบŠเป‰ "^D" เป‚เบ”เบเบšเบฑเบ‡เป€เบญเบตเบ™เบˆเบฒเบเป€เบ„เบทเปˆเบญเบ‡เบˆเปˆเบฒเบเป€เบ‡เบดเบ™. เบ–เป‰เบฒเบญเบฑเบ™เบ™เบตเป‰เบ–เบทเบเบ•เบฑเป‰เบ‡เป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบˆเบดเบ‡
เบ„เปˆเบฒ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เบญเบญเบเบˆเบฒเบ perldl เป‚เบ”เบเบšเบฑเบ‡เป€เบญเบตเบ™เป‚เบ”เบเบเบฒเบ™เบžเบดเบก "^D". เบ–เป‰เบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบ•เบฑเป‰เบ‡โ€‹เบกเบฑเบ™โ€‹เป€เบ›เบฑเบ™ a
เบ„เปˆเบฒเบ—เบตเปˆเปƒเบซเบเปˆเบเบงเปˆเบฒ 1 (เปเบฅเบฐ PERLDL::MULTI เบ–เบทเบเบ•เบฑเป‰เบ‡), เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เปƒเบŠเป‰ "^D" เป€เบžเบทเปˆเบญเบญเบญเบเป„เบ”เป‰.
เบ„เบณเบชเบฑเปˆเบ‡เบซเบผเบฒเบเปเบ–เบง. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เบ—เปเปˆเบ„เปเบฒเบชเบฑเปˆเบ‡เบˆเบฒเบเป„เบŸเบฅเปŒเบซเบผเบทเบ—เปเปˆ, เบ™เบตเป‰
เบ•เบปเบงเปเบ›เบšเปเปˆเบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบš.

ยท $HOME

เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเป€เบฎเบทเบญเบ™เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰

ยท $PERLDL::TERM

เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบชเบฑเบš::ReadLine object เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบš perldl shell. เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป‚เบ”เบ
เบ›เบปเบเบเบฐเบ•เบดเป€เบญเบตเป‰เบ™เบงเปˆเบฒเบˆเบฒเบ perldl เบ–เป‰เบฒเบ„เปเบฒเบชเบฑเปˆเบ‡เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบกเปˆเบ™เป‚เบ•เป‰เบ•เบญเบš.

ยท $PDL::toolongtoprint

pdls เบ‚เบฐเปœเบฒเบ”เบชเบนเบ‡เบชเบธเบ”เบ—เบตเปˆเบˆเบฐเบžเบดเบก (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™ 10,000 เบญเบปเบ‡เบ›เบฐเบเบญเบš). เบ™เบตเป‰เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเป€เบ›เบฑเบ™
"perldl" เบซเบผเบท "pdl2" เบ•เบปเบงเปเบ›เปเบ•เปˆเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เปƒเบ™เบ›เบปเบเบเบฐเบ•เบด
เป€เบŠเบ”เบŠเบฑเบ™เบเบฒเบ™เปเบเป‰เบšเบฑเบ™เบซเบฒเปเบšเบšเป‚เบ•เป‰เบ•เบญเบš.

เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” scripts เบˆเบฒเบ เป„เบ”เป‰ "perld" เบเบฒเบ™เบเบฐเบ•เบธเป‰เบ™เป€เบ•เบทเบญเบ™
idiom เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบชเบฐเบ„เบดเบš perldl เบซเบผเบทเบซเบ™เป‰เบฒเบ—เบตเปˆเปเบเป‰เป„เบ‚เบญเบญเบ™เป„เบฅเบ™เปŒเปเบกเปˆเบ™

pdl> # script emacs &
-- เป€เบžเบตเปˆเบกเบฅเบฐเบซเบฑเบ” perldl เปƒเบชเปˆเบชเบฐเบ„เบฃเบดเบš เปเบฅเบฐเบšเบฑเบ™เบ—เบถเบเป„เบŸเบฅเปŒ

pdl> เป€เบฎเบฑเบ” 'script'

-- เบ›เปˆเบฝเบ™เปเบ—เบ™เบ•เบปเบงเปเบเป‰เป„เบ‚ window-based เบ—เบตเปˆเบ—เปˆเบฒเบ™เบกเบฑเบเบชเปเบฒเบฅเบฑเบš 'emacs' (เบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเบ•เป‰เบญเบ‡เบ›เปˆเบฝเบ™เป€เบŠเบฑเปˆเบ™เบเบฑเบ™
'&' เปƒเบ™เบฅเบฐเบšเบปเบšเบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™ Unix).

เปเบฅเปˆเบ™ "do 'script'" เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡เบ›เบฑเบšเบ›เบธเบ‡เบ•เบปเบงเปเบ›เปเบฅเบฐเบ„เปเบฒเบ™เบดเบเบฒเบกเบŸเบฑเบ‡เบŠเบฑเบ™เบˆเบฒเบ
เบชเบฐเบšเบฑเบšเบ›เบฐเบˆเบธเบšเบฑเบ™เบ‚เบญเบ‡ 'script'.

เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” perdl scripts เบˆเบฒเบ เป„เบ”เป‰ เบ„เปเบฒเบชเบฑเปˆเบ‡ เบญเบญเบ™เป„เบฅเบ™เปŒ
เบชเบฐเบ„เบฃเบดเบš PDL เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเบฐเบ„เบฃเบดเบš perl เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เบเบฑเบšเบเบฒเบ™เปƒเบŠเป‰ PDL (เปเบฅเบฐเบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™ PDL::NiceSlice).
เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบ„เบปเบ™เบ‚เบตเป‰เบ„เป‰เบฒเบ™เปเบ—เป‰เป†, perldl เบชเบฒเบกเบฒเบ”เบ–เบทเบเป€เบญเบตเป‰เบ™เป€เบ›เบฑเบ™เบ™เบฒเบเบžเบฒเบชเบฒ script. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒ perldl เปเบกเปˆเบ™
เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡เป€เบ›เบฑเบ™เบชเบฐเบ„เบดเบš perl เบ—เบตเปˆเบ–เบทเบเบ•เบตเบ„เบงเบฒเบกเบซเบกเบฒเบ, unices เบชเปˆเบงเบ™เปƒเบซเบเปˆเบˆเบฐเบšเปเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบงเบปเป‰เบฒเบงเปˆเบฒ "#!/usr/bin/perldl"
เบขเบนเปˆเป€เบ—เบดเบ‡เบชเบธเบ”เบ‚เบญเบ‡เบชเบฐเบ„เบฃเบดเบšเบ‚เบญเบ‡เบ—เปˆเบฒเบ™.

เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ, เป€เบงเบปเป‰เบฒเบงเปˆเบฒ "#!/usr/bin/pdl" เปเบฅเบฐ script เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบˆเบฐเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เปเบ™เปˆเบ™เบญเบ™เบ„เบทเบเบฑเบšเบงเปˆเบฒเบ—เปˆเบฒเบ™เบžเบดเบกเบกเบฑเบ™,
line-by-line, เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ perldl shell.

เบ„เปเบฒเบชเบฑเปˆเบ‡ เบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เบเปˆเบญเบ™
เปเบฒเบเป€เบซเบ”: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰เบ–เบทเบเปƒเบŠเป‰เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป‚เบ”เบ PDL::NiceSlice. เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบชเปเบฒเบฅเบฑเบšเป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบเปˆเบฝเบงเบเบฑเบš slicing
เบขเบนเปˆเบ—เบตเปˆ "perldl" prompt

เปƒเบ™เบšเบฒเบ‡เบเปเบฅเบฐเบ™เบต, เบกเบฑเบ™เบชเบฐเบ”เบงเบเบ•เปเปˆเบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบเปˆเบญเบ™เบ—เบตเปˆเบกเบฑเบ™เบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เป„เบ›เบซเบฒ perl เบชเปเบฒเบฅเบฑเบš
เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ™เบตเป‰เปเบกเปˆเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเปเบเบฐเป„เบ”เป‰เบ–เบทเบเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเบ•เปเปˆเบ„เบปเบ™
เบšเปเปˆเบ„เบธเป‰เบ™เป€เบ„เบตเบเบเบฑเบš perl เปเบ•เปˆเบœเบนเป‰เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบŠเป‰เบ›เบฐเป‚เบซเบเบ”เบˆเบฒเบเบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเป€เบžเบตเปˆเบกเบขเบนเปˆเปƒเบ™เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™ (เป€เบŠเบฑเปˆเบ™: เป‚เบ”เบ
quoting arguments เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบเบฑเบšเบ„เปเบฒเบชเบฑเปˆเบ‡เบชเบฐเป€เบžเบฒเบฐเปƒเบ”เบซเบ™เบถเปˆเบ‡).

*เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹*: เบเบฒเบ™โ€‹เป‚เบ•เป‰โ€‹เบ•เบญเบš preprocessing เป„เบ”เป‰โ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เบˆเบฒเบโ€‹เบชเบฐโ€‹เบšเบฑเบšโ€‹เบเปˆเบญเบ™โ€‹เบซเบ™เป‰เบฒโ€‹เบ™เบตเป‰โ€‹! เบงเบดเบ—เบตเบเบฒเบ™เป€เบเบปเปˆเบฒเบ—เบตเปˆเปƒเบŠเป‰
$PERLDL::PREPROCESS เบˆเบฐเบเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปเบ•เปˆเบ–เบทเบเบ›เบฐเบ•เบดเป€เบชเบ”เบขเปˆเบฒเบ‡เปเบ‚เบ‡เปเบฎเบ‡ เปเบฅเบฐเบญเบฒเบ”เบˆเบฐเบซเบฒเบเป„เบ›เปƒเบ™
เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เปƒเบŠเป‰เบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เบเปˆเบญเบ™เป‚เบ”เบเบเบฒเบ™เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เบ•เบปเบงเบเบญเบ‡เบ—เบตเปˆเบกเบตเบŸเบฑเบ‡เบŠเบฑเบ™ "preproc_add".
"preproc_add" เปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบ™เบถเปˆเบ‡ argument เป€เบŠเบดเปˆเบ‡เป€เบ›เบฑเบ™เบ•เบปเบงเบเบญเบ‡เบ—เบตเปˆเบˆเบฐเบ•เบดเบ”เบ•เบฑเป‰เบ‡. เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เปเบกเปˆเบ™ Perl
เบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบดเบ‡เบฅเบฐเบซเบฑเบ” (เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบ•เบฑเป‰เบ‡เบขเบนเปˆเปƒเบ™เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™) เบ—เบตเปˆเบˆเบฐเบ–เบทเบเป€เบญเบตเป‰เบ™เบงเปˆเบฒ, เบเบฑเบš
string เบ„เปเบฒเบชเบฑเปˆเบ‡เบ›เบฐเบˆเบธเบšเบฑเบ™เป€เบ›เบฑเบ™ argument, เบžเบฝเบ‡เปเบ•เปˆเบเปˆเบญเบ™เบ—เบตเปˆ string เบˆเบฐเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบ shell.
เบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบ–เบทเบเปเบเป‰เป„เบ‚เบ„เบงเบ™เบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™. เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ” "perldl" เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™
เปƒเบŠเป‰เบšเปเปˆเป„เบ”เป‰เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เบชเบปเปˆเบ‡เบ„เบทเบ™เบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบ–เบทเบเปเบเป‰เป„เบ‚; เบเบฒเบ™เป€เบŠเบปเบฒเป€เบ›เบฑเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ”เบฝเบงเบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ.

เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เบชเบฒเบกเบฒเบ”เบ–เบทเบเป‚เบเบเบเป‰เบฒเบเบญเบญเบเบˆเบฒเบเบ—เปเปˆ preprocessing เป‚เบ”เบเบเบฒเบ™เป‚เบ—เบซเบฒ "preproc_del" เบเบฑเบš
เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เบ—เบตเปˆเบˆเบฐเป€เบญเบปเบฒเบญเบญเบเป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡. เป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเบงเปˆเบฒเบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เป„เบ”เป‰เบ–เบทเบเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบขเบนเปˆเปƒเบ™
เบ—เปเปˆเบชเบปเปˆเบ‡เบเปˆเบญเบ™เบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เปƒเบŠเป‰ "preproc_registered":

pdl> preproc_add $myfilter เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆ preproc_registered $myfilter;

เบฎเบธเปˆเบ™เบเปˆเบญเบ™เปœเป‰เบฒเบ‚เบญเบ‡ "perldl" เปƒเบŠเป‰เบ•เบปเบงเปเบ› $PERLDL::PREPROCESS. เบ™เบตเป‰เบเบฑเบ‡เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบ
เปเบ•เปˆเบ„เบงเบ™เบซเบผเบตเบเป€เบงเบฑเป‰เบ™. เบเบฐเบฅเบธเบ™เบฒเบ›เปˆเบฝเบ™เบชเบฐเบ„เบฃเบดเบšเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบžเบทเปˆเบญเปƒเบŠเป‰เบŸเบฑเบ‡เบŠเบฑเบ™ "preproc_add" เปเบฅเบฐเบญเบทเปˆเบ™เป†.

เบฅเบฐเบซเบฑเบ”เบ•เปเปˆเป„เบ›เบ™เบตเป‰เบˆเบฐเบเบงเบ”เบชเบญเบšเบเบฒเบ™เป‚เบ—เบซเบฒเป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆ 'mysub' เปเบฅเบฐเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบงเบปเบ‡เป€เบฅเบฑเบšเบเบฑเบš
qw.

$filter = preproc_add เบเปˆเบญเบ {
$str = shift;
$str =~ s/^\s+//; # เบŠเปˆเบญเบ‡เบŠเบฑเป‰เบ™เบ™เปเบฒ
เบ–เป‰เบฒ ($str =~ /^mysub/) {
my ($command, $arguments) = split(/\s+/,$str, 2);
$str = "$command qw($arguments)"
เบ–เป‰เบฒ (เบเปเบฒเบ™เบปเบ” $arguments && $arguments !~ /^qw/);
};
# เบเบฑเบšเบ„เบทเบ™เบชเบฐเบ•เบฃเบดเบ‡เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™, เปเบเป‰เป„เบ‚เบ•เบฒเบกเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™
เบเบฑเบšเบ„เบทเบ™ $str;
};

เบ™เบตเป‰เบˆเบฐเป€เบ›เบฑเบ™เบเบฒเบ™เปเบ›เบ‡:

pdl> mysub arg1 arg2

to

pdl> mysub qw( arg1 arg2 )

เบ—เบตเปˆ Perl เบˆเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเป€เบ›เบฑเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ. เปเบ™เปˆเบ™เบญเบ™, เบ•เป‰เบญเบ‡เปƒเบŠเป‰เบ„เบงเบฒเบกเบžเบฐเบเบฒเบเบฒเบกเบ•เบทเปˆเบกเบญเบตเบเปœเป‰เบญเบเปœเบถเปˆเบ‡
เบเบงเบ”เป€เบšเบดเปˆเบ‡เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบœเบนเป‰เป‚เบ—เป„เบ”เป‰เบชเบฐเบซเบ™เบญเบ‡เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ›เบปเบเบเบฐเบ•เบด (เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡
quoting เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹) เบซเบผเบท interpolation เบ•เบปเบงโ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เปเบกเปˆเบ™โ€‹เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบญเบปเบฒ preprocessor เบ™เบตเป‰เบญเบญเบเป‚เบ”เบเปƒเบŠเป‰เบŸเบฑเบ‡เบŠเบฑเบ™ "preproc_del" เป€เบŠเบดเปˆเบ‡เปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบ™เบถเปˆเบ‡ argument
(เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เบ—เบตเปˆเบˆเบฐเป€เบญเบปเบฒเบญเบญเบ, เบกเบฑเบ™เบ•เป‰เบญเบ‡เป€เบ›เบฑเบ™ coderef เบ”เบฝเบงเบเบฑเบ™เบ—เบตเปˆเบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™เบˆเบฒเบเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ
"preproc_add" เป‚เบ—โ€‹:

pdl> preproc_del $filter;

เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบปเบงเบˆเบดเบ‡เบชเบฒเบกเบฒเบ”เบžเบปเบšเป„เบ”เป‰เปƒเบ™เบชเบฐเบ„เบดเบš "perldl". เป€เบšเบดเปˆเบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆ
"trans" เป€เบžเบทเปˆเบญเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเป‚เบ›เป€เบŠเบ”เป€เบŠเบต preprocessor niceslicing เบ–เบทเบเป€เบ›เบตเบ”เปƒเบŠเป‰ / เบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™เปเบ™เบงเปƒเบ”.

"perld" เปเบฅเบฐ PDL::NiceSlice
PDL::NiceSlice เปเบ™เบฐเบ™เบณ syntax slicing เบ—เบตเปˆเบชเบฐเบ”เบงเบเบเบงเปˆเบฒเบชเบณเบฅเบฑเบš piddles. เปƒเบ™โ€‹เบ›เบฐโ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹
เป€เบงเบตเบŠเบฑเบ™เบ‚เบญเบ‡ "perldl" เปเบฅเบฐ "pdl2" niceslicing เบ–เบทเบเป€เบ›เบตเบ”เปƒเบŠเป‰เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ (เบ–เป‰เบฒเบ•เป‰เบญเบ‡เบเบฒเบ™ CPAN
เป‚เบกเบ”เบนเบ™เบ–เบทเบเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ).

เป€เบกเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ "perldl" เบˆเบฐเปเบˆเป‰เบ‡เปƒเบซเป‰เบ—เปˆเบฒเบ™เบฎเบนเป‰เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒ niceslicing เบ–เบทเบเป€เบ›เบตเบ”เปƒเบŠเป‰. เบ‚เปเป‰เบ„เบงเบฒเบกเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฐ
เบ›เบฐเบเบญเบšเบกเบตเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰, เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™เบ™เบตเป‰:

perlDL shell v1.XX
PDL เบกเบฒเบžเป‰เบญเบกเบเบฑเบšเบเบฒเบ™เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡. เบชเปเบฒเบฅเบฑเบšเบฅเบฒเบเบฅเบฐเบญเบฝเบ”, เป€เบšเบดเปˆเบ‡เป„เบŸเบฅเปŒ
'เบเบฒเบ™เบชเบณเป€เบ™เบปเบฒ' เปƒเบ™เบเบฒเบ™เปเบˆเบเบขเบฒเบ PDL. เบ™เบตเป‰เปเบกเปˆเบ™เบŠเบญเบšเปเบงเบŸเบฃเบตเปเบฅเบฐเบ—เปˆเบฒเบ™
เบเบดเบ™เบ”เบตเบ•เป‰เบญเบ™เบฎเบฑเบšเบเบฒเบ™เปเบˆเบเบขเบฒเบเบกเบฑเบ™เบžเบฒเบเปƒเบ•เป‰เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบชเบฐเป€เบžเบฒเบฐเปƒเบ”เบซเบ™เบถเปˆเบ‡, เป€เบšเบดเปˆเบ‡
เป„เบŸเบฅเปŒเบ”เบฝเบงเบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบฅเบฒเบเบฅเบฐเบญเบฝเบ”.
ReadLines, NiceSlice เป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เปเบฅเป‰เบง
เบเบณเบฅเบฑเบ‡เบญเปˆเบฒเบ™ /home/csoelle/.perldlrc...
เบžเบดเบก 'demo' เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบฒเบ—เบดเบ”เบญเบญเบ™เป„เบฅเบ™เปŒ
เป‚เบซเบฅเบ” PDL v2.XX

เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบ„เบงเบฒเบกเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ—เบตเปˆเบŠเบตเป‰เบšเบญเบเบงเปˆเบฒ "NiceSlice" เบ–เบทเบเป€เบ›เบตเบ”เปƒเบŠเป‰, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡
slicing syntax:

pdl> $a = เบฅเปเบฒเบ”เบฑเบš 10;
pdl> p $a(3:8:2)

เบชเปเบฒเบฅเบฑเบšเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ›เบถเบเบชเบฒ PDL::NiceSlice.

PDL::NiceSlice เบ•เบดเบ”โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ•เบปเบงโ€‹เบเบฑเปˆเบ™โ€‹เบ•เบญเบ‡โ€‹เปƒเบ™โ€‹เบ—เปเปˆโ€‹เบเปˆเบญเบ™โ€‹เบเบฒเบ™โ€‹เบ›เบธเบ‡โ€‹เปเบ•เปˆเบ‡ (เป€เบšเบดเปˆเบ‡โ€‹เบ‚เป‰เบฒเบ‡โ€‹เป€เบ—เบดเบ‡โ€‹) เป€เบžเบทเปˆเบญโ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เปƒเบŠเป‰โ€‹เป„เบ”เป‰โ€‹.
เบ›เบฑเบšเบ›เบธเบ‡ syntax slicing. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เบ„เปเบฒเบชเบฑเปˆเบ‡เบˆเปเบฒเบ™เบงเบ™เบซเบ™เป‰เบญเบเปƒเบ™ "perldl" shell เป€เบžเบทเปˆเบญเบ›เปˆเบฝเบ™เบ™เบตเป‰
preprocessing เป€เบ›เบตเบ” เบซเบผเบทเบ›เบดเบ” เปเบฅเบฐเบเบฑเบ‡เบเบงเบ”เบชเบญเบšเบขเปˆเบฒเบ‡เบŠเบฑเบ”เป€เบˆเบ™เบเบฒเบ™เบ—เบปเบ”เปเบ—เบ™เบ—เบตเปˆ NiceSlice
เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบชเบฐเบซเบผเบฑเบšเบ•เบปเบงเบเบญเบ‡ PDL::NiceSlice เป€เบ›เบตเบ” เปเบฅเบฐเบ›เบดเบ”เป‚เบ”เบเบเบฒเบ™เบžเบดเบก

pdl> trans # switch niceslicing เป€เบ›เบตเบ”

เปเบฅเบฐ

pdl> notrans # switching niceslicing off

เบ•เบฒเบกเบฅเปเบฒเบ”เบฑเบš. เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เปเบกเปˆเบ™เป€เบ›เบตเบ”เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™.

เป€เบžเบทเปˆเบญเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบ„เปเบฒเบชเบฑเปˆเบ‡เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบ–เบทเบเปเบ›เปเบ™เบงเปƒเบ” เบชเบฐเบซเบผเบฑเบšเบฅเบฒเบเบ‡เบฒเบ™เบขเบนเปˆ:

pdl> เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™ 1;
pdl> p $a(3:8:2)
เบ›เบธเบ‡เปเบ•เปˆเบ‡ p $a->nslice([3,8,2])
[3 5 7]

เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™, เบ›เบดเบ”เบเบฒเบ™เบฅเบฒเบเบ‡เบฒเบ™เบ•เบฒเบกเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™

pdl> เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™ 0;
pdl> p $a(3:8:2)
[3 5 7]

เบเบฒเบ™เบฅเบฒเบเบ‡เบฒเบ™เบ–เบทเบเบ›เบดเบ”เป„เบงเป‰เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™.

เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ” เบ›เบฐเบ•เบดเบšเบฑเบ” เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™ เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡ hooks
เบ•เบปเบงเปเบ› @PERLDL::AUTO เปเบกเปˆเบ™เบฅเบฒเบเบŠเบทเปˆเบ‡เปˆเบฒเบเป†เบ‚เบญเบ‡เบชเบฐเบ•เบฃเบดเบ‡เบฅเบฐเบซเบฑเบ” perl เปเบฅเบฐ/เบซเบผเบทเบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡เบฅเบฐเบซเบฑเบ”. เบกเบฑเบ™
เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบˆเบฐเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบ—เบธเบเป†เบ„เบฑเป‰เบ‡เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เปเบ–เบงเปƒเบซเบกเปˆ.

เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‡เปˆเบฒเบเป†เปเบกเปˆเบ™เบเบฒเบ™เบžเบดเบกเป€เบงเบฅเบฒเบ‚เบญเบ‡เปเบ•เปˆเบฅเบฐเบ„เปเบฒเบชเบฑเปˆเบ‡:

pdl> push @PERLDL::AUTO,'print scalar(gmtime),"\n"'

pdl> เบžเบดเบกเบชเบนเบ™(3,3)
Sun May 3 04:49:05 1998

[
[0 0 0]
[0 0 0]
[0 0 0]
]

pdl> เบžเบดเบก "Boo"
Sun May 3 04:49:18 1998
Boo
pdl>

เบซเบผเบทเป€เบžเบทเปˆเบญเปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ”เป†เปƒเบ™เป„เบŸเบฅเปŒ 'local.perldlrc' เบˆเบฐเบ–เบทเบเป€เบเบฑเบšเบ‚เบถเป‰เบ™เบชเบฐเป€เปเบต :-

pdl> push @PERLDL::AUTO,"do 'local.perldlrc'"

เบฅเบฐเบซเบฑเบ”เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเปƒเบชเปˆเปƒเบ™ * 'local.perldlrc' เปเบ™เปˆเบ™เบญเบ™, เปเบ•เปˆเบฅเบฐเบงเบฑเบ‡ :-) [Hint: add
"เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆ ($started ++)" เป„เบ›เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เป€เบžเบทเปˆเบญเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบกเบฑเบ™เบˆเบฐเบชเปเบฒเป€เบฅเบฑเบ”เบžเบฝเบ‡เปเบ•เปˆเบ„เบฑเป‰เบ‡เบ”เบฝเบง!]

เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ•เบปเบงเบขเปˆเบฒเบ‡เบญเบทเปˆเบ™เปเบกเปˆเบ™เป€เบ›เบฑเบ™ hook เบชเปเบฒเบฅเบฑเบš Autoloaders (เป€เบŠเบฑเปˆเบ™: PDL::AutoLoader) เป€เบžเบทเปˆเบญเป€เบžเบตเปˆเบก
เบฅเบฐโ€‹เบซเบฑเบ”โ€‹เป€เบŠเบฑเปˆเบ™โ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เบ—เบตเปˆโ€‹เบญเบฐโ€‹เบ™เบธโ€‹เบเบฒเบ”โ€‹เปƒเบซเป‰โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เบเบฒเบ™โ€‹เบชเบฐโ€‹เปเบเบ™โ€‹เป„เบŸเบฅโ€‹เปŒโ€‹เบ‚เบญเบ‡โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เปƒเบซเบกเปˆโ€‹. เบ™เบตเป‰โ€‹เปเบกเปˆเบ™
เบชเบฐเบ”เบงเบเบ—เบตเปˆเบชเบธเบ”เบขเบนเปˆเปƒเบ™เป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เปเบšเบšเป‚เบ•เป‰เบ•เบญเบš. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒ hook เบ™เบตเป‰เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบขเบนเปˆเปƒเบ™เปเบเบฐ
เบกเบฑเบ™เบšเบฑเบ‡เบ„เบฑเบšเปƒเบŠเป‰เบชเบฐเบ„เบดเบš PDL เบ—เบตเปˆเบšเปเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš.

เบชเบธเบ”เบ—เป‰เบฒเบเบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบญเปเบฒเบ™เบงเบเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบผเบฒเบ - เบŠเบถเปˆเบ‡เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบกเบฑเบ™เบ„เบงเบ™เบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบเบฑเบš
เบฅเบฐเบกเบฑเบ”เบฅเบฐเบงเบฑเบ‡!

เปƒเบŠเป‰ perldlp เบญเบญเบ™เป„เบฅเบ™เปŒเป‚เบ”เบเปƒเบŠเป‰เบšเปเบฅเบดเบเบฒเบ™ onworks.net


เป€เบŠเบตเบšเป€เบงเบต เปเบฅเบฐเบชเบฐเบ–เบฒเบ™เบตเป€เบฎเบฑเบ”เบงเบฝเบเบŸเบฃเบต

เบ”เบฒเบงเป‚เบซเบผเบ”เปเบญเบฑเบš Windows เปเบฅเบฐ Linux

  • 1
    i Report-Designer เบชเบณ เบฅเบฑเบš JasperReports
    i Report-Designer เบชเบณ เบฅเบฑเบš JasperReports
    เปเบฒเบเป€เบซเบ”: iReport/Jaspersoft Studio Support
    เบ›เบฐเบเบฒเบ”: เป€เบ›เบฑเบ™เบชเบฐเบšเบฑเบš 5.5.0,
    Jaspersoft Studio เบˆเบฐเป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™
    เบฅเบนเบเบ„เป‰เบฒเบญเบญเบเปเบšเบšเบชเปเบฒเบฅเบฑเบš JasperReports. iReport
    เบˆเบฐ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” iReport-Designer เบชเปเบฒเบฅเบฑเบš JasperReports
  • 2
    PostInstallerF
    PostInstallerF
    PostInstallerF เบˆเบฐเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ—เบฑเบ‡เปเบปเบ”
    เบŠเบญเบšเปเบงเบ—เบตเปˆ Fedora Linux เปเบฅเบฐเบญเบทเปˆเบ™เป†
    เบšเปเปˆเบฅเบงเบกเป€เบญเบปเบฒเบ•เบฒเบกเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบซเบผเบฑเบ‡เบˆเบฒเบ
    เปเบฅเปˆเบ™ Fedora เป€เบ›เบฑเบ™เบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”. เบ‚เบญเบ‡เบกเบฑเบ™
    เบ‡เปˆเบฒเบโ€‹เบชเปเบฒโ€‹เบฅเบฑเบš ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” PostInstallerF
  • 3
    เบชเบฒเบเปเบฎเปˆ
    เบชเบฒเบเปเบฎเปˆ
    เป‚เบ„เบ‡เบเบฒเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เป„เบ”เป‰เบ–เบทเบเบเป‰เบฒเบเป„เบ›
    https://strace.io. strace is a
    เบเบฒเบ™เบงเบดเบ™เบดเบ”เป„เบช, debugging เปเบฅเบฐเบ„เปเบฒเปเบ™เบฐเบ™เปเบฒ
    userspace tracer เบชเปเบฒเบฅเบฑเบš Linux. เบกเบฑเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰
    เบ•เบดเบ”โ€‹เบ•เบฒเบกโ€‹เบเบงเบ”โ€‹เบเบฒ ...
    เบ”เบฒเบงโ€‹เป‚เบซเบผเบ”โ€‹เบ•เบดเบ”โ€‹เบ•เบฒเบกโ€‹
  • 4
    gMKVEExtractGUI
    gMKVEExtractGUI
    GUI เบชเปเบฒเบฅเบฑเบšเบœเบปเบ™เบ›เบฐเป‚เบซเบเบ” mkvextract (เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡
    MKVToolNixโ€‹) เบ—เบตเปˆโ€‹เบ›เบฐโ€‹เบเบญเบšโ€‹เบชเปˆเบงเบ™โ€‹เบซเบผเบฒเบ (เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹
    เบšเปเปˆเปเบกเปˆเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”) เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡ mkvextract เปเบฅเบฐ
    mkvinfo เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”. เบ‚เบฝเบ™เปƒเบ™ C#NET 4.0,...
    เบ”เบฒเบงเป‚เบซเบฅเบ” gMKVEExtractGUI
  • 5
    เบซเปเบชเบฐเปเบธเบ” JasperReports
    เบซเปเบชเบฐเปเบธเบ” JasperReports
    เบซเปเบชเบฐเบซเบกเบธเบ” JasperReports เปเบกเปˆเบ™
    เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบ—เบตเปˆเบ™เบดเบเบปเบกเบ—เบตเปˆเบชเบธเบ”เปƒเบ™เป‚เบฅเบ
    เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เปเบฅเบฐเบเบฒเบ™เบฅเบฒเบเบ‡เบฒเบ™
    เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบ. เบกเบฑเบ™เบ–เบทเบเบ‚เบฝเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™ Java
    เปเบฅเบฐโ€‹เบกเบฑเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ” ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” JasperReports Library
  • 6
    เบ›เบถเป‰เบก Frappe
    เบ›เบถเป‰เบก Frappe
    Frappe Books เป€เบ›เบฑเบ™เปเบซเบผเปˆเบ‡เบŸเบฃเบต เปเบฅเบฐเป€เบ›เบตเบ”
    เบŠเบญเบšโ€‹เปเบงโ€‹เบเบฒเบ™โ€‹เบฎเบฑเบโ€‹เบชเบฒโ€‹เบ›เบทเป‰เบกโ€‹เบšเบฑเบ™โ€‹เบ—เบถเบ desktop เบงเปˆเบฒโ€‹
    เบ‡เปˆเบฒเบโ€‹เบ”เบฒเบโ€‹เปเบฅเบฐโ€‹เบ”เบตโ€‹เบญเบญเบโ€‹เปเบšเบšโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เป‚เบ”เบโ€‹
    เบ—เบธเบฅเบฐเบเบดเบ”เบ‚เบฐเปœเบฒเบ”เบ™เป‰เบญเบ เปเบฅเบฐเบ™เบฑเบเบญเบดเบ”เบชเบฐเบฅเบฐ. เบกเบฑเบ™...
    เบ”เบฒเบงเป‚เบซเบฅเบ”เบ›เบทเป‰เบก Frappe
  • เป€เบžเบตเปˆเบกเป€เบ•เบตเบก ยป

Linux เบ„เบณ เบชเบฑเปˆเบ‡

Ad