Shell ΠΈ bash Π² ΡΠ΅ΠΌ ΡΠ°Π·Π½ΠΈΡΠ°
Shell ΠΈ bash
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ shell ΠΈ bash. Π ΡΠ΅ΠΌ ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅?
bash, sh, zsh, dash ΠΈ Ρ.Π΄. ΠΈ Ρ.ΠΏ. ΡΡΠΎ Π²ΡΠ΅ shell
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ shell ΠΈ bash. Π ΡΠ΅ΠΌ ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅?
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ car ΠΈ bmw. Π ΡΠ΅ΠΌ ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅?
Π½ΠΎ ΠΊΠ°ΠΊ ΠΈ ΠΎΠΏΠΈΡΠ°Π»ΠΈ Π²ΡΡΠ΅: ΠΎΡ shell ΠΈΠ΄ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π²ΡΡΠ΅.
ΠΠ±ΠΎΠ»ΠΎΡΠΊΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ (shell) β ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΡ.
Π ΠΎΠ±ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅, ΡΠ°Π·Π»ΠΈΡΠ°ΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ Ρ Π΄Π²ΡΠΌΡ ΡΠΈΠΏΠ°ΠΌΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ: ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ (TUI) ΠΈ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ (GUI).
ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ (Π°Π½Π³Π». Command line interface, CLI) β ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠΌ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΡ Π΄Π°ΡΡΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΏΡΡΡΠΌ Π²Π²ΠΎΠ΄Π° Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΡΡΡΠΎΠΊ (ΠΊΠΎΠΌΠ°Π½Π΄).
ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ ΠΈ ΠΎΡΠ»ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ.
ΠΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° UNIX (Π°Π½Π³Π». Unix shell, ΡΠ°ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ Β«ΡΠ΅Π»Π»Β» ΠΈΠ»ΠΈ Β«shΒ») β ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° UNIX, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π»ΠΈΠ±ΠΎ Π΄Π°Π²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ, Π»ΠΈΠ±ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΊΡΠΈΠΏΡΡ, ΡΠΎΡΡΠΎΡΡΠΈΠ΅ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄. Π ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΠΏΠΎΠ΄ shell ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡΡΡ POSIX-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ, Π²ΠΎΡΡ ΠΎΠ΄ΡΡΠΈΠ΅ ΠΊ Bourne shell (ΡΠ΅Π»Π» ΠΠΎΡΠ½Π°), ΠΏΠΎΡΠ²ΠΈΠ²ΡΠ΅ΠΌΡΡΡ Π² Unix Version 7.
Bash (ΠΎΡ Π°Π½Π³Π». Bourne again shell, ΠΊΠ°Π»Π°ΠΌΠ±ΡΡ Β«Born againΒ» shell β Β«Π²ΠΎΠ·ΡΠΎΠΆΠ΄ΡΠ½Π½ΡΠΉΒ» shell) β ΡΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π½Π½Π°Ρ ΠΈ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π²Π°ΡΠΈΠ°ΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ Bourne shell. ΠΠ΄Π½Π° ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ UNIX. ΠΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π° Π² ΡΡΠ΅Π΄Π΅ Linux, Π³Π΄Π΅ ΠΎΠ½Π° ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠ΅Π΄ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ.
Bash β ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅. Bash ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠΈΡΠ°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ· ΡΠ°ΠΉΠ»Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠΌ (ΠΈΠ»ΠΈ ΡΡΠ΅Π½Π°ΡΠΈΠ΅ΠΌ). ΠΠ°ΠΊ ΠΈ Π²ΡΠ΅ Unix-ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ, ΠΎΠ½ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π°Π²ΡΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠΌΡΠ½ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ, ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΡ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π·Π° ΠΏΠΎΡΡΠ΄ΠΊΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ ΠΈ ΡΠΈΠΊΠ»Π°. ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π°, ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠ·ΡΠΊΠ° Π±ΡΠ»ΠΈ Π·Π°ΠΈΠΌΡΡΠ²ΠΎΠ²Π°Π½Ρ ΠΈΠ· sh. ΠΡΡΠ³ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΡΡΠΎΡΠΈΡ, Π±ΡΠ»ΠΈ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½Ρ ΠΈΠ· csh ΠΈ ksh. Bash Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΡ POSIX, Π½ΠΎ Ρ ΡΡΠ΄ΠΎΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²ΠΎΠΏΡΠΎΡ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ, Ρ.ΠΊ. bash ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ shell.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ bash / shell
Π ΡΠΎ, ΠΈ Π΄ΡΡΠ³ΠΎΠ΅ β ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π² Π»ΠΈΠ½ΡΠΊΡΠ΅. Π’ΠΎ Π΅ΡΡΡ Π΅ΡΠ»ΠΈ Π²Ρ ΠΎΡΠΊΡΠΎΠ΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ ΠΈ Π²Π²Π΅Π΄Π΅ΡΠ΅ Π»ΡΠ±ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π΄Π° Ρ ΠΎΡΡ:
Π’ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Π΅Π΅ ΡΠ°ΡΡΠΈΡΡΡΠ΅Ρ ΠΈ ΡΠΊΠ°ΠΆΠ΅Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΡ Β«ΠΎΠ½ Ρ ΠΎΡΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ /homeΒ». ΠΠΎΠΌΠΏΡΡΡΠ΅Ρ Π²Π΅Π΄Ρ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π° ΡΡΡΡΠΊΠΎΠΌ / Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅. ΠΠΌΡ Π½ΡΠΆΠ½Ρ Π±Π°ΠΉΡΠΈΠΊΠΈ. ΠΡΠΈΠΌ ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ β ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΎΠΌ Ρ Β«Π½Π°ΡΠ΅Π³ΠΎΒ» Π½Π° Β«ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΡΠΉΒ» ΡΠ·ΡΠΊ.
Π’Π°ΠΊ ΡΡΠΎ Β«cd /homeΒ» β ΡΡΠΎ shell-ΠΊΠΎΠΌΠ°Π½Π΄Π°! ΠΠ»ΠΈ bash. Π‘ΠΌΠΎΡΡΡ ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π² Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅. Π ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. Π£ Π½ΠΈΡ Π΅ΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΡΠ°Π·Π»ΠΈΡΠΈΡ, Π½ΠΎ Π΅ΡΡΡ ΠΈ Π½Π°Π±ΠΎΡ Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ Π²ΡΠ΅: cd, mv, cp, lsβ¦ (Π² Π²ΠΈΠ½Π΄Π΅ ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈΠ΅)
Π ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ shell-ΡΠΊΡΠΈΠΏΡ ΡΠΎΠ³Π΄Π°? ΠΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ, Π²Π½ΡΡΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄! ΠΡΠΎ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Β«ΡΠ»ΠΎΠΆΠ½ΡΠ΅Β» ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ-ΡΠΎ ΡΡΠΏΠ΅Ρ-Π½Π°Π²ΠΎΡΠΎΡΠ΅Π½Π½ΠΎΠ΅. ΠΡΠΎ Π»ΡΠ±ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠΊΡΠΈΠΏΡΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ·Π΄Π°ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΈ Π² Π½Π΅ΠΉ ΡΠ°ΠΉΠ»ΠΈΠΊ:
Π Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π²ΠΎΠ²ΡΠ΅, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠ°ΠΊ ΡΠΊΡΠΈΠΏΡ:
Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ .sh ΡΡΠ°Π²ΠΈΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ. ΠΠ°ΡΠ΅Π» Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ:
β ΠΠ³Π°, ΡΡΠΎ ΡΡΡ Ρ Π½Π°Ρ? Π€Π°ΠΉΠ»Ρ sh, ΡΠΊΡΠΈΠΏΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π»Π΅ΠΆΠ°Ρ.
Π‘ΠΊΡΠΈΠΏΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠΎΡΡΡΠ΅, Π° ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅. ΠΠΎΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΌΡ Π²Π½Π°ΡΠ°Π»Π΅ Π²ΡΡΡΠ½ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ»ΠΈ ΡΠ΅ΡΡΠΎΠ²ΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ. ΠΠ»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π½Π°Π΄ΠΎ:
ΠΠ΅ΡΠ΅ΠΏΠΎΠ΄Π»ΠΎΠΆΠΈΡΡ war-ΡΠ°ΠΉΠ» Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ (Π»Π΅ΠΆΠ°Ρ ΠΎΠ½ΠΈ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ /opt)
Π‘Π΅ΡΠ²ΠΈΡΠ° Π΄Π²Π°, Π΄ΠΎΠΏΡΡΡΠΈΠΌ ΡΡΠΎ test ΠΈ cloud. Π’Π°ΠΊ ΡΡΠΎ ΡΠ°Π³ΠΎΠ² ΡΠΆΠ΅ 6.
ΠΠΎΠ³Π΄Π° ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ Π²ΡΡΡΠ½ΡΡ Π½Π°Π΄ΠΎΠ΅Π»ΠΎ, ΠΌΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΠ»ΠΈ Π½Π° Π²ΡΠ΅ Π»ΠΈΠ½ΡΠΊΡ ΠΌΠ°ΡΠΈΠ½Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΊΡΠΈΠΏΡΠΈΠΊ:
Π‘ΠΎΠ±ΠΈΡΠ°Π΅ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΠ΄ΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΡΡ ΠΊ ΡΠΊΡΠΈΠΏΡΠΈΠΊΡ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡ 1 ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²ΠΌΠ΅ΡΡΠΎ 6. Π£Π΄ΠΎΠ±Π½ΠΎ! ΠΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Β«Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΡΡΡΠΈΠ½ΡΒ» =)
ΠΡΡΠ³ΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Ρ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° β ΠΌΡ Π΄Π΅Π»Π°Π»ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ linux Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠ½ΠΊΡΡ ΠΏΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΡΠ°ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ max_map_count β ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ ΠΏΠ°ΠΌΡΡΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ.
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΏΠΈΠΊΠ΅ ΡΠ°Π±ΠΎΡΡ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΌΡΡΠΈ. ΠΡΠ»ΠΈ Π½Π΅ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, ΡΠΎ Β«ΡΡΠΆΠ΅Π»ΠΎΠ²Π΅ΡΠ½Π°ΡΒ» Π·Π°Π΄Π°ΡΠ° ΠΏΡΠΎΡΡΠΎ ΡΠΏΠ°Π΄Π΅Ρ Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ Β«ΠΠ΅ Ρ Π²Π°ΡΠ°Π΅Ρ ΠΏΠ°ΠΌΡΡΠΈΒ». Π Π΅ΡΠ»ΠΈ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ ΡΠ°ΠΊΡΡ ΠΎΡΠΈΠ±ΠΊΡ, ΡΠΎ Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΈΠ΄Π΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠΎΠΎΠ±ΡΠ΅, Π΅ΡΠ»ΠΈ Π²Ρ ΠΎΡΠ΄Π°Π΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΠΎΡΠΊΡΠΏ Β«ΡΡΠΆΠΈΠΌΒ» Π°Π΄ΠΌΠΈΠ½Π°ΠΌ, Π»ΡΡΡΠ΅ ΠΏΠΎΡΠΎΠΌ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ β Π° Π²ΡΡ Π»ΠΈ Π½Π°ΡΡΡΠΎΠ΅Π½ΠΎ Π²Π΅ΡΠ½ΠΎ? ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΎΠ±ΡΡΠ½ΠΎ Π½Π° production (ΠΌΠ°ΡΠΈΠ½Π°, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ΅Π°Π»ΡΠ½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ) Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ Π²ΡΡ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΎ Π½Π° ΡΠ΅ΡΡΠΎΠ²ΡΡ ΡΡΠ΅Π½Π΄Π°Ρ ΠΌΠΎΠ³ΡΡ ΡΡΠΎ-ΡΠΎ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ. ΠΠΎ Π»ΡΡΡΠ΅ ΠΏΠ΅ΡΠ΅Π±Π΄Π΅ΡΡ!
ΠΡ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ ΡΠΊΡΠΈΠΏΡ ΠΏΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ (ΡΠΈΠΌΠ²ΠΎΠ» Β«#Β» Π² Π½Π°ΡΠ°Π»Π΅ ΡΡΡΠΎΠΊΠΈ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΡΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ):
Π ΠΈΡΠΎΠ³Π΅ Π°Π΄ΠΌΠΈΠ½Ρ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅, Π° ΠΏΠΎΡΠΎΠΌ ΠΌΡ Π΄Π°Π΅ΠΌ ΠΈΠΌ ΡΠΊΡΠΈΠΏΡ, ΠΏΡΠΎΡΠΈΠΌ Π·Π°ΠΏΡΡΡΠΈΡΡ Π΅Π³ΠΎ ΠΈ ΠΏΡΠΈΡΠ»Π°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ. Π― Π·Π°ΠΏΡΡΡΠΈΠ»Π° ΡΠΊΡΠΈΠΏΡ Π½Π° Β«Π³ΠΎΠ»ΠΎΠΉΒ» ΡΠΈΡΡΠ΅ΠΌΠ΅, Π³Π΄Π΅, ΡΠ°Π·ΡΠΌΠ΅Π΅ΡΡΡ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π½Π°ΡΡΡΠΎΠ΅Π½Ρ Π½Π΅ Π±ΡΠ»ΠΈ, ΠΈ Π²ΠΎΡ ΠΎΡΠ²Π΅Ρ:
ΠΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ Π²ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΡΠΎΠ²Π°Π»ΠΈΠ»ΠΈΡΡ, ΡΡΠ°ΡΡΡ failed. ΠΡΠ»ΠΈ ΠΈ ΠΎΡ Π°Π΄ΠΌΠΈΠ½ΠΎΠ² ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎΡ ΠΎΠΆΠ°Ρ ΠΊΠ°ΡΡΠΈΠ½Π°, Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ ΠΈΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΡΠ»ΠΈ ΠΊ Π½Π°ΠΌ ΠΏΡΠΈΡ ΠΎΠ΄ΡΡ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΠΏΠ°Π΄Π΅Π½ΠΈΡ ΠΈΠ·-Π·Π° Π½Π΅Ρ Π²Π°ΡΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠ½ΠΎΠ²Π° ΠΏΡΠΎΡΠΈΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠΊΡΠΈΠΏΡ. Π’Π°ΠΊ ΠΏΡΠΎΡΠ΅ Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΡ: ΡΡΠΎ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΊΠΎΡΡΠΊ, ΠΈΠ»ΠΈ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ Π½Π°ΡΡΡΠΎΠ΅Π½ΠΎ ΠΏΠ»ΠΎΡ ΠΎ?
ΠΡΠΎΡΠΈΡΡ Π΄ΡΡΠ³ΠΈΡ Π»ΡΠ΄Π΅ΠΉ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ 10 ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π΅ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠΎΡΠΎ. ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠ°ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΌΠΎΠΆΠ΅Ρ Β«ΠΏΠΎΡΠ΅ΡΡΡΡΡΡΒ» ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ β ΠΏΠ»ΠΎΡ ΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π», Π·Π°Π±ΡΠ» Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ, ΠΊΠΎΡΠΎΡΡΡ Π΄Π°Π»ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ·ΠΆΠ΅. ΠΠΎΡΠ°Π·Π΄ΠΎ ΠΏΡΠΎΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ 1 ΡΠΊΡΠΈΠΏΡ ΠΈ ΠΏΠΎΠΏΡΠΎΡΠΈΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΅Π³ΠΎ.
ΠΠΎΠ³Π΄Π° Π½Π°Π΄ΠΎ ΠΏΠΈΡΠ°ΡΡ ΡΠΊΡΠΈΠΏΡ?
ΠΠΎΠ³Π΄Π° Π½Π°Π΄ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π±ΠΎΠ»ΡΡΠ΅ 3 ΠΊΠΎΠΌΠ°Π½Π΄ Π·Π° ΡΠ°Π· β ΠΏΡΠΎΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΎΠ΄Π½Ρ, Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠΊΡΠΈΠΏΡ.
ΠΠΎΠ³Π΄Π° ΠΎΠ΄Π½Ρ ΠΈ ΡΡ ΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π°Π΄ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ°ΡΠ΅ 3 ΡΠ°Π· β Π»ΡΡΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡ ΡΠ°Π±ΠΎΡΡ.
ΠΠΎ ΡΡΡΠΈ ΡΠ²ΠΎΠ΅ΠΉ, bash-ΡΠΊΡΠΈΠΏΡΡ β ΡΡΠΎ ΡΠ° ΠΆΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ. Π ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ? ΠΠΎΠ³Π΄Π° ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΈΠ·Π±Π°Π²ΠΈΡΡΡΡ ΠΎΡ ΡΡΡΠΈΠ½Ρ, ΠΎΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π²ΡΡΡΠ½ΡΡ. ΠΠΎΠ²ΡΠΎΡΡΠ΅ΡΠ΅ ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ / Π½Π΅Π΄Π΅Π»Ρ? ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΡΠΊΡΠΈΠΏΡ. ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΎΠ½ Π½Π° 2-3 ΡΡΡΠΎΡΠΊΠΈ Π±ΡΠ΄Π΅Ρ, ΡΡΠΎ ΠΏΡΠ°Π²Π΄Π° ΡΠ΄ΠΎΠ±Π½Π΅Π΅. ΠΠΎΠ²Π΅ΡΡΡΠ΅, ΡΠ°ΠΌΠ° Π΄Π΅Π»Π°Π»Π° Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΡ =)
Π‘ΠΌ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎ bash:
ΠΡΠ½ΠΎΠ²Ρ BASH. Π§Π°ΡΡΡ 1 (Π₯Π°Π±Ρ) β ΡΠΈΠΊΠ» ΡΡΠ°ΡΠ΅ΠΉ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°ΡΡ ΡΠΊΡΠΈΠΏΡΡ
Π‘ΠΌ ΡΠ°ΠΊΠΆΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ°ΡΡΠΈ ΠΈΠ· ΡΠΈΠΊΠ»Π° Β«Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅. Β»:
Bash vs shell
Π£Π²Π°ΠΆΠ°Π΅ΠΌΡΠ΅ Π·Π½Π°ΡΠΎΠΊΠΈ ΠΎΠ±ΡΡΡΠ½ΠΈΡΠ΅ Π½ΠΎΠ²ΠΈΡΠΊΡ, ΡΠ΅ΠΌ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ bash ΠΎΡ shell`a ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΠΌΠΎΠ³Ρ ΠΏΠΎΠ½ΡΡΡ Π² ΡΠ΅ΠΌ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ ΡΠ°Π·Π½ΠΈΡΠ°.
P.S Π Π³ΡΠ³Π»Π΅ Π½Π΅ Π½Π°ΡΡΠ».
bash ΡΡΠΎ bourne again shell.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΎΡΠ²Π΅Ρ Π²ΡΠ΅ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, Π½ΠΎ Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ Π²Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΡΠ»ΠΈΡΠΈΡ bash ΠΎΡ sh. p.s ΠΡΠΎΡ ΠΎΡΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ.
ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ ΡΠ°Π·Π½ΠΈΡΡ ΡΠ΅Π±Π΅ Π½Π°Π΄ΠΎ ΠΏΠΎΠ½ΡΡΡ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΎΡΠ²Π΅Ρ Π²ΡΠ΅ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, Π½ΠΎ Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ Π²Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΡΠ»ΠΈΡΠΈΡ bash ΠΎΡ sh. p.s ΠΡΠΎΡ ΠΎΡΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ.
Π° ΠΎΡΠΊΡΠ΄Π° ΠΏΠΎΡΠ»Π° ΡΡΠ° ΠΊΠΎΠΏΠΈΠΏΠ°ΡΡΠ°?
ΠΡΠ΅Π΄ΠΏΡΠΈΠΈΠΌΡΠΈΠ²ΡΠ΅ ΠΌΠΎΠ»ΠΎΠ΄ΡΠ΅ Π»ΡΠ΄ΠΈ, ΡΡΠΎΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°ΡΡΡΡ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠΎΠΉ. ΠΡ ΠΌΠΎΠ»ΠΎΠ΄ΡΠ΅, Π·Π΄ΠΎΡΠΎΠ²ΡΠ΅, ΡΠΌΠ½ΡΠ΅. ΠΡΠΎ ΡΠΎ ΡΡΠΎ Π½Π°Π΄ΠΎ. ΠΡΠΎ ΡΡ ΡΡ ΠΈ Π²ΠΈΠ»Π»Ρ. Π‘ΡΠ΄Π° Π½ΡΠΆΠ½ΠΎ Π²Π»ΠΈΠ²Π°ΡΡΡΡ Π½Π΅Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎ. Π‘Π΅ΡΡΠ΅Π·Π½ΠΎ, Π»ΡΠ±ΠΎΠΉ ΠΈΠ· Π²Π°Ρ Π±ΡΠ΄Π΅Ρ ΡΡΠ°ΡΡΠ»ΠΈΠ² ΠΎΡ ΡΠ°ΠΊΠΎΠ³ΠΎ. ΠΡΠΎ Π»ΡΡΡΠ΅ ΡΠ΅ΠΌ ΡΠΈΠ΄Π΅ΡΡ Π½Π° ΠΆΠΎΠΏΠ΅ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΠ΅Π΄Ρ ΠΏΡΠΎ ΠΠΠ’. Π― Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ ΡΡΠΎ Π΄Π°Π½Π½ΡΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ·ΠΎΠ²Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ, Π½ΠΎ Ρ ΠΎΡΡ ΡΡΠ°Π·Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ΅ΡΠ΅ΡΡ β ΡΠ°ΠΌΠΎΠ΅ ΠΎΠΏΠ°ΡΠ½ΠΎΠ΅ Π² ΠΆΠΈΠ·Π½ΠΈ β ΠΏΡΠΎΠΆΠΈΡΡ Π΅Π΅, Π½Π΅ Π·Π°ΠΌΠ΅ΡΠΈΠ², ΠΊΠ°ΠΊ ΠΎΠ½Π° ΠΏΡΠΎΡΠ»Π°, Π±ΡΠ΄ΡΡΠΈ ΡΠ΅ΡΠΎΠΉ ΠΌΡΡΡΡ. ΠΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π½Π΅ Π±ΡΠ΄ΡΡ ΡΠ°ΠΊΠΈΠΌΠΈ ΡΠΌΠ½ΡΠΌΠΈ ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ΅ ΡΠΈΡΡΠΎ.
ΡΡΠΏΠ΅Ρ ΠΊΠ»Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅
ΠΠΠ₯Π, ΠΊΠ°ΠΊΠ°Ρ-ΡΠΎ Π²Π°ΡΠΈΠ°ΡΠΈΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΆΠΈΡΠΈΠΊΠ° ΠΊ Π±ΡΡΡ. ΠΠ° Π»ΡΡΠΊΠ΅ Π±ΡΠ»ΠΎ
ΠΡΠ΅ΠΌ ΡΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΎΡΠ²Π΅ΡΡ, ΠΏΠΎΠ½ΡΠ» Π² ΡΠ΅ΠΌ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ bash ΠΈ sh.
Π ΡΠ΅ΠΌ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ Bash ΠΈ Shell?
Bash (bash) β ΠΎΠ΄Π½Π° ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ (Π½ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ) ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ Unix. β¦ Π‘ΡΠ΅Π½Π°ΡΠΈΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ β ΡΡΠΎ ΡΡΠ΅Π½Π°ΡΠΈΠΈ Π² Π»ΡΠ±ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ΅, Π° ΡΡΠ΅Π½Π°ΡΠΈΠΈ Bash β ΡΡΠΎ ΡΡΠ΅Π½Π°ΡΠΈΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ Bash. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ Β«ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈΒ» ΠΈ Β«ΡΡΠ΅Π½Π°ΡΠΈΠΉ bashΒ» ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎ, Π΅ΡΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌΠ°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Bash.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ bash ΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° Π² Linux?
Bash β ΡΡΠΎ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° ΠΈΠ»ΠΈ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ GNU. ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π°Π±Π±ΡΠ΅Π²ΠΈΠ°ΡΡΡΠΎΠΉ ΠΎΡ Β«Bourne-Again SHellΒ», ΠΊΠ°Π»Π°ΠΌΠ±ΡΡΠ° Π‘ΡΠΈΠ²Π΅Π½Π° ΠΠΎΡΠ½Π°, Π°Π²ΡΠΎΡΠ° ΠΏΡΡΠΌΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΠΊΠ° ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ sh Unix, ΠΏΠΎΡΠ²ΠΈΠ²ΡΠ΅ΠΉΡΡ Π² Π²Π΅ΡΡΠΈΠΈ Unix ΡΠ΅Π΄ΡΠΌΠΎΠ³ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΡ Bell Labs Research.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π±Π°Ρ?
Bash β ΡΡΠΎ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° Unix ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΡΠ·ΡΠΊ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΠΡΠ°ΠΉΠ°Π½ΠΎΠΌ Π€ΠΎΠΊΡΠΎΠΌ Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° GNU Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎΠΉ Π·Π°ΠΌΠ΅Π½Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ Bourne. ΠΠΏΠ΅ΡΠ²ΡΠ΅ Π²ΡΠΏΡΡΠ΅Π½Π½ΡΠΉ Π² 1989 Π³ΠΎΠ΄Ρ, ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ Π²Ρ ΠΎΠ΄Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² Linux. β¦ Bash ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠΈΡΠ°ΡΡ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ· ΡΠ°ΠΉΠ»Π°, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΡΡΠ΅Π½Π°ΡΠΈΠ΅ΠΌ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ.
Π ΡΠ΅ΠΌ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ ΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠΌ?
Shell β ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ²ΠΎΠ΄, ΠΊΠ°ΠΊ bash Π² Linux. Π’Π΅ΡΠΌΠΈΠ½Π°Π» β ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, Π·Π°ΠΏΡΡΠΊΠ°ΡΡΠ°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ, Π² ΠΏΡΠΎΡΠ»ΠΎΠΌ ΡΡΠΎ Π±ΡΠ»ΠΎ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ (ΡΠ°Π½ΡΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Ρ Π±ΡΠ»ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠ°ΠΌΠΈ Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠΎΠΉ, ΠΎΠ½ΠΈ Π±ΡΠ»ΠΈ ΡΠ΅Π»Π΅ΡΠ°ΠΉΠΏΠ°ΠΌΠΈ), Π° Π·Π°ΡΠ΅ΠΌ Π΅Π΅ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ Π±ΡΠ»Π° ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½Π° Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅, ΡΠ°ΠΊΠΎΠ΅ ΠΊΠ°ΠΊ Gnome-Terminal.
ΠΠ°ΠΊΠ°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° Π»ΡΡΡΠ°Ρ ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ ΡΡΠΎ bash?
ΠΠ½ Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ UNIX Bourne (ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΉ ΠΊΠ°ΠΊ sh) ΠΈ Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ ΡΠΎ ΡΡΠ°ΡΡΠΌΠΈ ΡΡΠ΅Π½Π°ΡΠΈΡΠΌΠΈ Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ»ΡΡΡΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ. Bash β ΠΎΡΠ΅Π½Ρ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ Π΄Π»Ρ Π½Π΅Π³ΠΎ ΠΈΠΌΠ΅Π΅ΡΡΡ ΠΎΠ±ΡΠΈΡΠ½Π°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ.
ΠΠ»Ρ ΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° bash?
Bash (ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΉ ΠΊΠ°ΠΊ Β«Bourne Again SHellΒ») ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Shell ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Bash Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ.
ΠΠ»Ρ ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ΅Π½ bash?
Bash Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΌ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ, ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ Π΄Π°Π½Π½ΡΡ , Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠΌ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ, Π΄Π°ΠΆΠ΅ Π² ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΡΠΌΠΈ Π΄Π΅Π»Π°ΠΌΠΈ, ΠΈ ΡΡΠΎ Π»ΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ .
Bash β ΡΡΠΎ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ?
Bash β ΠΌΠΎΡΠ½ΡΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΉ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΈ Π² ΡΡΠ΅Π½Π°ΡΠΈΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ. Π ΡΡΠΎΠΉ ΡΠ΅ΡΠΈΠΈ ΠΈΠ· ΡΡΠ΅Ρ ΡΠ°ΡΡΠ΅ΠΉ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Bash Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ (CLI).
ΠΠ° ΡΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Π½ bash?
CMD β ΡΡΠΎ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»?
ΠΡΠ°ΠΊ, cmd.exe Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΌΡΠ»ΡΡΠΎΡΠΎΠΌ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Windows, ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅Π΅ Π½Π° ΠΌΠ°ΡΠΈΠ½Π΅ Windows. ΠΠ΅ Π½ΡΠΆΠ½ΠΎ Π½ΠΈΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄ΡΠ°ΠΆΠ°ΡΡ. ΠΡΠΎ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ°, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ. β¦ cmd.exe β ΡΡΠΎ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, Π° ΠΈΡ ΠΎΡΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΎ.
Π’Π΅ΡΠΌΠΈΠ½Π°Π» β ΡΡΠΎ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ°?
ΠΠ±ΠΎΠ»ΠΎΡΠΊΠ° β ΡΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ»ΡΠΆΠ±Π°ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. Π§Π°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ (CLI). Π’Π΅ΡΠΌΠΈΠ½Π°Π» β ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ.
ΠΠΎΡΠ΅ΠΌΡ ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ?
ΠΠ½ Π½Π°Π·Π²Π°Π½ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΌΡΠΉ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΡΡΠ΅Π±ΡΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±ΡΠ» Π·Π½Π°ΠΊΠΎΠΌ Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ ΠΈ ΠΈΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ Π²ΡΠ·ΠΎΠ²Π°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π» ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ ΡΠ·ΡΠΊΠ° ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΡ Π΄Π»Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, bash).
Π ΡΠ±Π° Π»ΡΡΡΠ΅ zsh?
ΠΠ° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄, Fish, ΠΈΠ»ΠΈ Β«Friendly Interactive ShellΒ», ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ ΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ. ΠΠ½ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΠΉ, ΡΠ΅ΠΌ Zsh ΠΈ Bash. ΠΠ½ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ°ΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ, ΠΊΡΠ°ΡΠΈΠ²ΠΎΠ΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΡΠ»ΡΡΠΈΠΈ ΠΈ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΊΠ° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ°, Π΅Π³ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ°ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΎΡΠ»ΠΈΡΠ½ΡΡ ΠΏΠΎΠΌΠΎΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
ΠΠ°ΠΊΠ°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π° ΠΈ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ?
ΠΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅: Bash Π±Π»ΠΈΠ·ΠΎΠΊ ΠΊ POSIX-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΠΉ ΠΈ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΡΡΡΠ΅ΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½Π°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ Π² ΡΠΈΡΡΠ΅ΠΌΠ°Ρ UNIX.
ΠΠ°ΠΊΠΎΠ²Π° ΠΎΠ΄Π½Π° ΠΈΠ· ΠΏΡΠΈΡΠΈΠ½ Π²ΡΠ±ΠΎΡΠ° ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ, ΠΎΡΠ»ΠΈΡΠ½ΠΎΠΉ ΠΎΡ bash?
Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΏΠ΅ΡΠ²Π°Ρ ΠΏΡΠΈΡΠΈΠ½Π° β ΡΠ°ΡΡΠΈΡΠΈΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ. Π Π°Π·Π½ΡΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°ΡΡ ΡΠΎΠΊΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π½Π° ΡΠ°Π·Π½ΡΡ Π²Π΅ΡΠ°Ρ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Zsh ΡΠΎΠΊΡΡΠΈΡΡΠ΅ΡΡΡ Π½Π° ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡΡ , Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ksh93 (ΡΠ΅ΠΊΡΡΠ°Ρ Β«ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½Π°ΡΒ» ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° korn) ΡΠΎΠΊΡΡΠΈΡΡΠ΅ΡΡΡ Π½Π° ΠΌΠΎΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
Π ΡΠ΅ΠΌ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ Bash ΠΈ Sh?
Π― Π²ΠΈΠΆΡ Π΄Π²Π° ΡΠΈΠΏΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°:
Π― ΠΈΡΠΊΠ°Π» ΡΡΠΎ ΠΎΠ½Π»Π°ΠΉΠ½, ΠΈ ΠΌΠ½Π΅Π½ΠΈΡ ΡΠΈΠ»ΡΠ½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΡΡ. ΠΠ±ΡΡΡΠ½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ Π²ΠΈΠ΄Π΅Π» Π½Π° Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ Π²Π΅Π±-ΡΠ°ΠΉΡΠΎΠ², Π³ΠΎΠ²ΠΎΡΡΡ, ΡΡΠΎ sh ΡΡΠ°ΡΡΠ΅ bash ΠΈ ΡΠ°Π·Π½ΠΈΡΡ Π½Π΅Ρ.
ΠΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ Π·Π½Π°Π΅Ρ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠΈΠΌΠΈ? ΠΠΎΠΆΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ Π΄Π°ΡΡ ΠΌΠ½Π΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ Π½Π°Π΄ Π΄ΡΡΠ³ΠΈΠΌ?
5 ΠΎΡΠ²Π΅ΡΠΎΠ² 5
Bash ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ (Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅, Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΌΠ°ΡΡΠΈΠ²Ρ), ΡΡΠΎ ΠΎΠ±Π»Π΅Π³ΡΠ°Π΅Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΠ°. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΠ΅ * nix’Ρ ΠΈΠΌΠ΅ΡΡ /bin/sh ΠΊΠ°ΠΊ ΡΡΡΠ»ΠΊΡ Π½Π° /bin/bash
ΠΠ»Ρ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π²ΠΎΡ ΡΡΠ΅Π±Π½ΠΈΠΊ
Π’ΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎ, /bin /sh Π±ΡΠ» Π±Ρ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ Bourne, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΠΈΡΡΠΎΡΠΈΠΈ ΠΈΠ»ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡ.
Π ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ 15 Π»Π΅Ρ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ Unix-ΡΠΈΡΡΠ΅ΠΌ Π±ΡΠ»Π° ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° POSIX, ΠΈΠ»ΠΈ, ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅, ksh ΠΈΠ»ΠΈ bash (ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠΈ Π½Π° POSIX), Π½ΠΎ Π²ΡΠ΅ Π΅ΡΠ΅ ΠΈΠΌΠ΅ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ Π² /bin /sh
Π Linux ΠΊΠΎΠΌΠ°Π½Π΄Π° sh ΠΏΠΎΡΡΠΈ Π²ΡΠ΅Π³Π΄Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΡΡΠ»ΠΊΡ Π½Π° bash ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΡΠ΅ΠΌΠΈ ΠΆΠ΅ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ.
/bin/sh Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΡΠ»ΠΊΠΎΠΉ ΠΈΠ»ΠΈ ΠΆΠ΅ΡΡΠΊΠΎΠΉ ΡΡΡΠ»ΠΊΠΎΠΉ Π² OS X, Π½ΠΎ ΠΎΠ½ ΠΏΠΎΡΡΠΈ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΠΊΠ°ΠΊ /bin/bash:
ΠΡΠ»ΠΈ bash Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ sh, ΠΎΠ½ ΠΏΡΡΠ°Π΅ΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π±Π»ΠΈΠ·ΠΊΠΎ ΠΈΠΌΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΈΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΈΡ Π²Π΅ΡΡΠΈΠΉ sh, ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΡ POSIX.
Π ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΠΌΠΈΠΌΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ½Π°ΡΡΠ΄ΠΎΠ² ΠΠΎΡΠ½Π° Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ. bash +B (Bourne) ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΡΠΊΠ»ΡΡΠΈΠ» Π±Ρ ΡΠ°ΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠ°ΠΊ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠΎΠ±ΠΎΠΊ.
ΠΡΠ»ΠΈ Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΈΡΠ°ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΈ Π΄Π»Ρ (ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅) ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ ΠΠΎΡΠ½Π°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ #!/usr/bin/env bash +B Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ.
Π― Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΠΏΡΠΎΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΈ Π΄Π»Ρ bash, ΡΠ΅ΠΌ ΠΈΠ·Π±Π΅Π³Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΡΠ°ΡΡΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ POSIX ΠΈΠ»ΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ Bourne, ΠΈΠ»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π²ΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ.