Weitere Γ€hnliche Inhalte
Γhnlich wie Perl in da shell (20)
Perl in da shell
- 2. Shell? What's that?
Π Π°Π·Π»ΠΈΡΠ°Π΅ΠΌ:
- ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ
(irb, python, ghci ...)
- ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ
(bash, zsh, tcsh ...)
Ρ
ΠΎΡΡ ΠΈ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π°ΡΡΠ½ΠΎ :-/
- 3. What about Perl?
- ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ
perlconsole
Devel::REPL
...
- ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ
Zoidberg
psh
- 5. 1. Simple one
$ perl -e 'eval while <>'
+ ΠΠ΅ΡΠ΅Π²ΠΎ
* Π½Π΅Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ
* ΡΠ°ΡΡΠΈΡΡΠ΅ΠΌΠ°Ρ (~ Π΄ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌΠ°Ρ)
- Π‘Π΅ΡΠ΄ΠΈΡΠΎ
* Π½Π΅Ρ ΠΈΡΡΠΎΡΠΈΠΈ
* Π½Π΅Ρ Π°Π²ΡΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
* Π½Π΅Ρ "ΠΌΠ½ΠΎΠ³ΠΎΡΡΡΠΎΠΊΠΎΠ²ΠΎΡΡΠΈ"
* ...
- 6. 2. Debuggish one
$ perl -de1
+ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Readline
+ ΠΏΠΎΠ΄Π³ΡΡΠ·ΠΊΠ° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ
- Π½Π΅ ΠΏΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ
- ΡΠ»ΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΠΎΠ΄ ΡΠ΅Π±Ρ
- 10. 4. Devel::REPL
https://metacpan.org/module/Devel::REPL
+ Π΅ΡΡΡ multi-line
+ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ²
* ΡΠ²Π΅ΡΠ½ΠΎΠΉ Π²ΡΠ²ΠΎΠ΄
* ΠΈΡΡΠΎΡΠΈΡ
* ...
+ ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ (ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π°ΠΏΠ΄Π΅ΠΉΡ - 01.11.12)
- ΠΌΠ½ΠΎΠ³ΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ
- 14. I. Zoidberg
https://metacpan.org/module/Zoidberg
+ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ (rc-ΡΠ°ΠΉΠ»Ρ, ΠΏΠ»Π°Π³ΠΈΠ½Ρ)
+ ΠΎΠ±Π΅ΡΡΠΊΠΈ Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈΠ· $PATH
zoid$ mv($_ => lc($_)) for grep /[A-Z]/, <*>
- ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ Unicode
- ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π·Π°Π±ΡΠΎΡΠ΅Π½Π°
- 16. II. psh (Perl SHell)
https://github.com/gnp/psh
+ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
+ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ (manifest
filters)
+ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ built-in ΠΊΠΎΠΌΠ°Π½Π΄ (source,
alias, jobs...)
- Π½Π΅Π»ΡΠ·Ρ ΡΠΌΠ΅ΡΠΈΠ²Π°ΡΡ Perl-ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΈ
Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
- ΠΏΡΠΎΠ΅ΠΊΡ Π½Π΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ
- 17. II. psh (Perl SHell)
https://github.com/gnp/psh
Manifest filters
1. Quick (ΠΏΠΎΡΡΡΠΎΠΊΠΎΠ²Π°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°)
$ ls | { print ++$i, ": $_"; }q
2. Grep (ΡΠΈΠ»ΡΡΡ)
$ ps -ef | {$_[1] > 20000}g
3. Substitution (Π·Π°ΠΌΠ΅Π½Π°)
$ ls -al | s/tonyo/alpaca/
- 18. II. psh (Perl SHell)
https://github.com/gnp/psh
ΠΠ»ΡΠΏΠ°ΠΊΠΈ ΠΎΠ΄ΠΎΠ±ΡΡΡΡ!