ΠΠ°ΡΠ΅ΡΠΈΠ°Π»ΡΡ, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°ΠΌΠ΅ Π΄Π½Π΅Ρ, Π΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π·Π° ΡΠ΅Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΡΠΊΠ°Ρ Π΄Π° ΡΠ΅ Π·Π°ΠΏΠΎΠ·Π½Π°ΡΡ Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ Π½Π° Linux. Π£ΠΌΠ΅Π½ΠΈΠ΅ΡΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠΎΠ·ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΡΠΏΠ΅ΡΡΡΠ²Π° ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅. ΠΠΎ-ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ, ΡΡΠΊ ΡΠ΅ Π³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Bash ΠΈ Π·Π° 21 ΠΏΠΎΠ»Π΅Π·Π½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ. Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° ΡΠ΅ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠ»Π°Π³ΠΎΠ²Π΅ΡΠ΅ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΈ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΈΡΠ΅ Π½Π° Bash, ΠΊΠΎΠΈΡΠΎ ΡΠ»Π΅ΡΠ½ΡΠ²Π°Ρ Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° Π΄ΡΠ»Π³ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ.
β
Π’Π΅ΡΠΌΠΈΠ½ΠΈ
ΠΡΠΈ ΠΈΠ·ΡΡΠ°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ Π½Π° Linux ΡΠ΅ ΡΠ΅ ΡΡΠ΅ΡΠ½Π΅ΡΠ΅ Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ½ΡΡΠΈΡ, ΠΊΠΎΠΈΡΠΎ Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π° ΡΠ°Π·Π±ΠΈΡΠ°ΡΠ΅. ΠΡΠΊΠΎΠΈ ΠΎΡ ΡΡΡ , ΠΊΠ°ΡΠΎ βLinuxβ ΠΈ βUnixβ, ΠΈΠ»ΠΈ βΠΊΠΎΠΌΠ°Π½Π΄Π΅Π½ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡβ ΠΈ βΡΠ΅ΡΠΌΠΈΠ½Π°Π»β, ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° ΡΠ΅ ΠΎΠ±ΡΡΠΊΠ²Π°Ρ. ΠΠ΅ΠΊΠ° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° ΡΠ΅Π·ΠΈ ΠΈ Π΄ΡΡΠ³ΠΈ Π²Π°ΠΆΠ½ΠΈ ΡΠ΅ΡΠΌΠΈΠ½ΠΈ.
β ΡΡΠΎ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ΅Π½Π° ΠΎΡ Bell Labs Π² 1970-ΡΠ΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ. ΠΠΎΠ΄ΡΡ Ρ Π΅ Π±ΠΈΠ» Π·Π°ΡΠ²ΠΎΡΠ΅Π½.
β ΡΡΠΎ Π½Π°ΠΉ-ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π°ΡΠ° Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°. Π Π½Π°ΡΠΈ Π΄Π½ΠΈ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠΈ.
(terminaΠ»), ΠΈΠ»ΠΈ Π΅ΠΌΡΠ»ΠΈΡΠ°Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» β ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°, ΠΊΠΎΡΡΠΎ ΠΎΡΠΈΠ³ΡΡΡΠ²Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΎΡΠ²ΠΎΡΠΈΡΠ΅ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π½ΠΈ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ.
(shell) β ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°, ΠΊΠΎΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΈΠ·ΠΏΡΠ°ΡΠ°ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠΏΠ΅ΡΠΈΠ°Π»Π΅Π½ Π΅Π·ΠΈΠΊ.
ΡΠ°Π·ΡΠΈΡΡΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΡΠΎ Bourne Again SHell. Π’ΠΎΠ²Π° Π΅ Π½Π°ΠΉ-ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡΡ Π΅Π·ΠΈΠΊ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, ΠΎΠ±ΠΎΠ»ΠΊΠ°ΡΠ° Bash ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² macOS.
(Command Line Interface, CLI) β ΡΡΠΎ Π½Π°ΡΠΈΠ½ Π½Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ²Π΅ΠΊ ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΡ, ΠΏΡΠΈ ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ Π²ΡΠ²Π΅ΠΆΠ΄Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ°ΡΠ°, Π° ΠΊΠΎΠΌΠΏΡΡΡΡΡΡ, ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΡΠ΅Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, ΠΈΠ·Π²Π΅ΠΆΠ΄Π° ΡΠ΅ΠΊΡΡΠΎΠ²ΠΈ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ Π·Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ. ΠΡΠ½ΠΎΠ²Π½ΠΎ, CLI ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° Π°ΠΊΡΡΠ°Π»Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΎΠ±Π΅ΠΊΡΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΠΈ Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡΡ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ ΡΠ°Π·Π³ΡΠ°Π½ΠΈΡΠ΅Π½ ΠΎΡ Π³ΡΠ°ΡΠΈΡΠ½ΠΈΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ (Graphical User Interface, GUI), ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Ρ ΠΊΠΎΠΉΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΌΠΈΡΠΊΠ°ΡΠ°. ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡΡ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ ΡΠ΅ΡΡΠΎ ΡΠ΅ Π½Π°ΡΠΈΡΠ° ΠΏΡΠΎΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅Π½ ΡΠ΅Π΄.
(ΡΠΊΡΠΈΠΏΡ) β ΡΠΎΠ²Π° Π΅ ΠΌΠ°Π»ΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°, ΠΊΠΎΡΡΠΎ ΡΡΠ΄ΡΡΠΆΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎΡΡ ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄. Π‘ΠΊΡΠΈΠΏΡΠΎΠ²Π΅ΡΠ΅ ΡΠ΅ Π·Π°ΠΏΠΈΡΠ²Π°Ρ Π²ΡΠ² ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΠΎ. ΠΡΠΈ ΠΏΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ, ΡΡΠ»ΠΎΠ²Π½ΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΡΠΈΠΊΠ»ΠΈ, ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ Π΄ΡΡΠ³ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ.
Π‘Π΅Π³Π°, ΠΊΠΎΠ³Π°ΡΠΎ ΡΠ°Π·Π³Π»Π΅Π΄Π°Ρ ΠΌΠ΅ Π²Π°ΠΆΠ½ΠΈΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½ΠΈ, ΠΈΡΠΊΠ°ΠΌ Π΄Π° ΠΏΠΎΠ΄ΡΠ΅ΡΡΠ°Ρ, ΡΠ΅ ΡΡΠΊ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠ΅ βBashβ, βΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ°β ΠΈ βΠΊΠΎΠΌΠ°Π½Π΄Π΅Π½ ΡΠ΅Π΄β ΠΊΠ°ΡΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΏΠΎΠ½ΡΡΠΈΡΡΠ° βΠ΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡβ (directory) ΠΈ βΠΏΠ°ΠΏΠΊΠ°β (folder).
Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡΠ΅ , ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΡΡΠΊ β ΡΠΎΠ²Π° Π΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡΡ Π²Ρ
ΠΎΠ΄ (standard input, stdin), ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡΡ ΠΈΠ·Ρ
ΠΎΠ΄ (standard output, stdout) ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡΡ ΠΈΠ·Ρ
ΠΎΠ΄ Π·Π° Π³ΡΠ΅ΡΠΊΠΈ (standard error, stderr).
ΠΠΊΠΎ Π² ΠΏΡΠΈΠΌΠ΅ΡΠΈΡΠ΅ Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈ ΠΏΠΎ-Π΄ΠΎΠ»Ρ, ΡΡΠ΅ΡΠ½Π΅ΡΠ΅ Π½Π΅ΡΠΎ ΠΊΠ°ΡΠΎ my_whatever β ΡΠΎΠ²Π° ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ ΡΠΎΠ·ΠΈ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ Π·Π°ΠΌΠ΅Π½Π΅Π½ Ρ Π½Π΅ΡΠΎ Π²Π°ΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ β ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π°.
Π‘Π΅Π³Π°, ΠΏΡΠ΅Π΄ΠΈ Π΄Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ΠΌ ΠΊΡΠΌ ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅, Π½Π° ΠΊΠΎΠΈΡΠΎ Π΅ ΠΏΠΎΡΠ²Π΅ΡΠ΅Π½ ΡΠΎΠ·ΠΈ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π», Π½Π΅ΠΊΠ° Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌ ΡΠΏΠΈΡΡΠΊΠ° ΠΈΠΌ ΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ ΠΊΡΠ°ΡΠΊΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ.
21 Bash-ΠΊΠΎΠΌΠ°Π½Π΄Π°
βΠΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ
man: ΠΈΠ·Π²Π΅ΠΆΠ΄Π° ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ (ΡΠΏΡΠ°Π²ΠΊΠ°) Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°.pwd: ΠΈΠ·Π²Π΅ΠΆΠ΄Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΠ΅ΠΊΡΡΠ°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ.ls: ΠΈΠ·Π²Π΅ΠΆΠ΄Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ°.ps: ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π³Π»Π΅ΠΆΠ΄Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΠ°Π±ΠΎΡΠ΅ΡΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠΈ.
βΠΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΈΠΈ Ρ ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°
cd: ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° ΡΠ΅ΠΊΡΡΠ°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ.touch: ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ».mkdir: ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ.cp: ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ».mv: ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ ΠΈΠ»ΠΈ ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ».ln: ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»Π½Π° Π²ΡΡΠ·ΠΊΠ°.
βΠΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ Π½Π° Π²Ρ ΠΎΠ΄Π° ΠΈ ΠΈΠ·Ρ ΠΎΠ΄Π° ΠΈ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠΈ
<: ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅stdin.>: ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅stdout.|: ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ, ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Ρ Π΅Π΄Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π° Π²Ρ ΠΎΠ΄Π° Π½Π° Π΄ΡΡΠ³Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°.
βΠ§Π΅ΡΠ΅Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅
head: ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° Π½Π°ΡΠ°Π»ΠΎΡΠΎ Π½Π° ΡΠ°ΠΉΠ».tail: ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° ΠΊΡΠ°Ρ Π½Π° ΡΠ°ΠΉΠ».cat: ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° ΡΠ°ΠΉΠ» ΠΈ ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ ΠΌΡ Π½Π° Π΅ΠΊΡΠ°Π½Π° ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½Π°ΡΠΈΡ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅.
βΠΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΡΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΈ
rm: ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ».kill: ΡΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΎΡΠ΅Ρ.
βΠ’ΡΡΡΠ΅Π½Π΅
grep: ΡΡΡΡΠ΅Π½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.ag: ΡΠ°Π·ΡΠΈΡΠ΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π° ΡΡΡΡΠ΅Π½Π΅.
βΠΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅
tar: ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π°ΡΡ ΠΈΠ²ΠΈ ΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΡΡΡ .
ΠΠ΅ΠΊΠ° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΏΠΎ-ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π·Π° ΡΠ΅Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ.
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅
ΠΡΡΠ²ΠΎ Π½Π΅ΠΊΠ° Π΄Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅, ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΎΡ ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Ρ ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° stdout. ΠΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠ΅Π·ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ ΠΈΠ·Π»ΠΈΠ·Π°Ρ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π½ΠΈΡ ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ.
βΠΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ
man command_name: ΠΈΠ·Π²Π΅ΠΆΠ΄Π° ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΡΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°, ΡΠΎΠ΅ΡΡ β ΡΠΏΡΠ°Π²ΠΎΡΠ½Π°ΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.
pwd: ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡΡΠΈΡΠ°ΡΠ° ΠΊΡΠΌ ΡΠ΅ΠΊΡΡΠ°ΡΠ° ΡΠ°Π±ΠΎΡΠ½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ. ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ ΡΠ΅ΡΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ΅ ΠΊΡΠ΄Π΅ ΡΠΎΡΠ½ΠΎ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΡΠ΅ Π½Π°ΠΌΠΈΡΠ°.
ls: ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ°. Π’Π°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΡΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΎ.
ls -a: ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΠΊΡΠΈΡΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. Π’ΡΠΊ Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ ΡΠ»Π°Π³ -a ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ls. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ»Π°Π³ΠΎΠ²Π΅ ΠΏΠΎΠΌΠ°Π³Π° Π·Π° Π½Π°ΡΡΡΠΎΠΉΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅.
ls -l: ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅.
ΠΠ±ΡΡΠ½Π΅ΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΠ΅ ΡΠ»Π°Π³ΠΎΠ²Π΅ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π½ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ β ΡΠ°ΠΊΠ°: ls -al.
ps: ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΠ΅ΠΊΡΡΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠΈ.
ps -e: ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π²ΡΠΈΡΠΊΠΈ ΡΠ΅ΠΊΡΡΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ, Π° Π½Π΅ ΡΠ°ΠΌΠΎ Π·Π° ΡΠ΅Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΡΠ΅ΠΊΡΡΠ°ΡΠ° ΠΎΠ±Π²ΠΈΠ²ΠΊΠ° Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ. Π’Π°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠΎΡΠ½ΠΎ ΠΏΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½.
βΠΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΈΠΈ Ρ ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°
cd my_directory: ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° ΡΠ°Π±ΠΎΡΠ½Π°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π½Π° my_directory. ΠΠ° Π΄Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ΡΠ΅ Π½Π° Π΅Π΄ΠΈΠ½ Π½ΠΈΠ²o ΠΏΠΎ-Π²ΠΈΡΠΎΠΊΠΎ Π² Π΄ΡΡΠ²ΠΎΡΠΎ Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈΡΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΠΊΠ°ΡΠΎ my_directory ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»Π΅Π½ ΠΏΡΡ ../.
![[Π² Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ] Bash Π·Π° Π½Π°ΡΠΈΠ½Π°Π΅ΡΠΈ: 21 ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°](/wp-content/uploads/2019/03/91815e5212c9dfec88a76bc2ab37955f.png)
ΠΠΎΠΌΠ°Π½Π΄Π°ΡΠ° cd
touch my_file: ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ» my_file Π½Π° Π·Π°Π΄Π°Π΄Π΅Π½ΠΈΡ ΠΏΡΡ.
mkdir my_directory: ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΏΠΊΠ° my_directory Π½Π° Π·Π°Π΄Π°Π΄Π΅Π½ΠΈΡ ΠΏΡΡ.
mv my_file target_directory: ΠΏΡΠ΅ΠΌΠ°Ρ
Π²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»Π° my_file Π² ΠΏΠ°ΠΏΠΊΠ° target_directory. ΠΡΠΈ ΡΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΠ΅Π»Π΅Π²Π°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π°Π±ΡΠΎΠ»ΡΡΠ΅Π½ ΠΏΡΡ Π΄ΠΎ Π½Π΅Ρ (Π° Π½Π΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΊΠ°ΡΠΎ ../).
ΠΠΎΠΌΠ°Π½Π΄Π°ΡΠ° mv, Π° ΡΡΡΠΎ ΡΠ°ΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΏΡΠ΅ΠΈΠΌΠ΅Π½ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈΠ»ΠΈ ΠΏΠ°ΠΏΠΊΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΡΠ°ΠΊΠ°:
mv my_old_file_name.jpg my_new_file_name.jpg: ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠΏΠΈΠ΅ Π½Π° ΡΠ°ΠΉΠ»Π°
cp my_source_file target_directorymy_source_file ΠΈ ΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ ΠΌΡ Π² ΠΏΠ°ΠΏΠΊΠ° target_directory.
ln -s my_source_file my_target_file: ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»Π½Π° Π²ΡΡΠ·ΠΊΠ° my_target_file ΠΊΡΠΌ ΡΠ°ΠΉΠ»Π°. my_source_fileΠΠΊΠΎ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π²ΡΡΠ·ΠΊΠ°ΡΠ°, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΈ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π½ΠΈΡΡ ΡΠ°ΠΉΠ».
ΠΠΊΠΎ ΡΠ°ΠΉΠ»ΡΡ my_source_file Π±ΡΠ΄Π΅ ΠΈΠ·ΡΡΠΈΡ, ΡΠΎΠ³Π°Π²Π° my_target_file ΠΎΡΡΠ°Π²Π°. Π€Π»Π°Π³ΡΡ -s ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ln ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΡΡΠ·ΠΊΠΈ ΠΈ Π·Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ.
Π‘Π΅Π³Π° Π΄Π° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ Π½Π° Π²Ρ ΠΎΠ΄Π°-ΠΈΠ·Ρ ΠΎΠ΄Π° ΠΈ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠΈΡΠ΅.
βΠΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ Π½Π° Π²Ρ ΠΎΠ΄Π° ΠΈ ΠΈΠ·Ρ ΠΎΠ΄Π° ΠΈ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠΈ
my_command < my_file: Π·Π°ΠΌΠ΅Π½Ρ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΠ° Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡ Π²Ρ
ΠΎΠ΄ (stdin) Ρ ΡΠ°ΠΉΠ» my_file. Π’ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ΠΎΡΠ°ΠΊΠ²Π° Π²Ρ
ΠΎΠ΄Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ°ΡΠ°, Π° ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΡΠ° ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π·Π°ΠΏΠΈΡΠ°Π½ΠΈ Π² ΡΠ°ΠΉΠ».
my_command > my_file: ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΎΡ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°, Ρ.Π΅. ΡΠΎΠ²Π°, ΠΊΠΎΠ΅ΡΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΏΠΎΠΏΠ°Π΄Π° Π² stdout ΠΈ ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π° Π½Π° Π΅ΠΊΡΠ°Π½Π°, Π² ΡΠ°ΠΉΠ» my_file. ΠΠΊΠΎ ΡΠ°ΠΉΠ»ΡΡ my_file Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π° β ΡΠΎΠΉ ΡΠ΅ ΡΡΠ·Π΄Π°Π²Π°. ΠΠΊΠΎ ΡΠ°ΠΉΠ»ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π° β ΡΠΎΠΉ ΡΠ΅ ΠΏΡΠ΅Π·Π°ΠΏΠΈΡΠ²Π°.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ls > my_folder_contents.txt ΡΠ΅ Π±ΡΠ΄Π΅ ΡΡΠ·Π΄Π°Π΄Π΅Π½ ΡΠ΅ΠΊΡΡΠΎΠ² ΡΠ°ΠΉΠ», ΡΡΠ΄ΡΡΠΆΠ°Ρ ΡΠΏΠΈΡΡΠΊ Π½Π° ΡΠΎΠ²Π°, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ Π½Π°ΠΌΠΈΡΠ° Π² ΡΠ΅ΠΊΡΡΠ°ΡΠ° ΡΠ°Π±ΠΎΡΠ½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ.
ΠΠΊΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π° > ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡΡΠ° >>, ΡΠΎ, ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ», Π² ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π° ΠΈΠ·Ρ
ΠΎΠ΄ΡΡ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°, ΡΠΎΠ·ΠΈ ΡΠ°ΠΉΠ» Π½ΡΠΌΠ° Π΄Π° Π±ΡΠ΄Π΅ ΠΏΡΠ΅Π·Π°ΠΏΠΈΡΠ°Π½. ΠΠ°Π½Π½ΠΈΡΠ΅ ΡΠ΅ Π±ΡΠ΄Π°Ρ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ Π² ΠΊΡΠ°Ρ Π½Π° ΡΠΎΠ·ΠΈ ΡΠ°ΠΉΠ».
Π‘Π΅Π³Π° Π½Π΅ΠΊΠ° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ½Π°ΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ.
![[Π² Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ] Bash Π·Π° Π½Π°ΡΠΈΠ½Π°Π΅ΡΠΈ: 21 ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°](/wp-content/uploads/2019/03/dcc4e500b247cb13adb4d64c36c24f88.png)
Π’ΠΎΠ²Π°, ΠΊΠΎΠ΅ΡΠΎ ΠΈΠ·Ρ
ΠΎΠ΄ΡΡ ΠΎΡ Π΅Π΄Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΡΠ΅ ΠΏΠΎΠ΄Π°Π²Π° Π½Π° Π²Ρ
ΠΎΠ΄Π° Π½Π° Π΄ΡΡΠ³Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. Π’ΠΎΠ²Π° Π΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΅Π΄Π½Π° ΡΡΡΠ±Π° ΠΊΡΠΌ Π΄ΡΡΠ³Π°.
first_command | second_command: ΡΠΈΠΌΠ²ΠΎΠ» Π½Π° ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ°, |, ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°, Π·Π° Π΄Π° ΠΈΠ·ΠΏΡΠ°ΡΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΎΡ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° Π΅Π΄Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π° Π΄ΡΡΠ³Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. Π’ΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ΠΎΡ Π»ΡΠ²Π°ΡΠ° ΡΡΡΠ°Π½Π° Π½Π° ΠΎΠΏΠΈΡΠ°Π½Π°ΡΠ° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΈΠ·ΠΏΡΠ°ΡΠ° Π² stdout, ΠΏΠΎΠΏΠ°Π΄Π° Π² stdin ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°, ΠΊΠΎΡΡΠΎ ΡΠ΅ Π½Π°ΠΌΠΈΡΠ° Π²Π΄ΡΡΠ½ΠΎ ΠΎΡ Π·Π½Π°ΠΊΠ° Π½Π° ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ°.
Π Linux ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ½Π°ΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΡΠΊΠ° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ ΡΠΎΡΠΌΡΠ»ΠΈΡΠ°Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. Π§Π΅ΡΡΠΎ ΡΠ΅ ΠΊΠ°Π·Π²Π°, ΡΠ΅ Π²ΡΠΈΡΠΊΠΎ Π² Linux Π΅ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Π·Π½Π°ΠΊΠ° Π½Π° ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ²ΡΡΠ·Π²Π°ΡΠ΅ Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎΡΡ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ. ΠΠ·Π³Π»Π΅ΠΆΠ΄Π° ΡΠ°ΠΊΠ°:
first_command | second_command | third_command ![[Π² Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ] Bash Π·Π° Π½Π°ΡΠΈΠ½Π°Π΅ΡΠΈ: 21 ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°](/wp-content/uploads/2019/03/1d94b3f04846ef40c072299877c55b1f.png)
ΠΠΎΠ½Π²Π΅ΠΉΠ΅ΡΡΡ ΠΎΡ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΡΠ°Π²Π½ΠΈ Ρ ΡΡΡΠ±ΠΎΠΏΡΠΎΠ²ΠΎΠ΄.
ΠΠ±ΡΡΠ½Π΅ΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΠ΅ ΠΊΠΎΠ³Π°ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°, ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π° Π½Π°Π»ΡΠ²ΠΎ ΠΎΡ Π·Π½Π°ΠΊΠ° |, ΠΈΠ·Π²Π΅Π΄Π΅ Π½Π΅ΡΠΎ Π² stdout, ΡΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΡΡ Π΅ ΠΈΠ·Π²Π΅Π΄Π΅Π½o, Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ ΡΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π·Π° stdin Π²ΡΠΎΡΠ°ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π°. Π’ΠΎΠ΅ΡΡ, ΠΎΠΊΠ°Π·Π²Π° ΡΠ΅, ΡΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ°, ΠΈΠΌΠ°ΠΌΠ΅ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ. ΠΠΎΠ½ΡΠΊΠΎΠ³Π° ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ Π½Π΅ΠΎΡΠ°ΠΊΠ²Π°Π½ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ. ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π·Π° ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ .
Π‘Π΅Π³Π° Π½Π΅ΠΊΠ° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π·Π° ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΠ΅Π·ΠΈ Π½Π° Π΅ΠΊΡΠ°Π½Π°.
βΠ§Π΅ΡΠ΅Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅
head my_file: ΡΠ΅ΡΠ΅ ΡΠ΅Π΄ΠΎΠ²Π΅ ΠΎΡ Π½Π°ΡΠ°Π»ΠΎΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π° ΠΈ Π³ΠΈ ΠΈΠ·Π²Π΅ΠΆΠ΄Π° Π½Π° Π΅ΠΊΡΠ°Π½Π°. ΠΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΠ΅ΡΠ΅ Π½Π΅ ΡΠ°ΠΌΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅, Π½ΠΎ ΠΈ ΡΠΎΠ²Π°, ΠΊΠΎΠ΅ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Ρ Π² stdin, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΡΠ°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΊΠ°ΡΠΎ Π΅Π»Π΅ΠΌΠ΅Π½Ρ Π½Π° ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ°.
tail my_file: ΡΠ΅ΡΠ΅ ΡΠ΅Π΄ΠΎΠ²Π΅ ΠΎΡ ΠΊΡΠ°Ρ Π½Π° ΡΠ°ΠΉΠ»Π°. Π’Π°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΡΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ°.
![[Π² Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ] Bash Π·Π° Π½Π°ΡΠΈΠ½Π°Π΅ΡΠΈ: 21 ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°](/wp-content/uploads/2019/03/0dd6e0353a1b5995d4a1228ae2550ad9.png)
Head (Π³Π»Π°Π²Π°) Π΅ ΠΎΡΠΏΡΠ΅Π΄, Π° tail (ΠΎΠΏΠ°ΡΠΊΠ°) β ΠΎΡΠ·Π°Π΄.
ΠΠΊΠΎ ΡΠ°Π±ΠΎΡΠΈΡΠ΅ Ρ Π΄Π°Π½Π½ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° pandas, ΡΠΎ ΡΠΎΠ³Π°Π²Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ head ΠΈ tail ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ° Π²ΠΈ ΠΏΠΎΠ·Π½Π°ΡΠΈ. ΠΠΊΠΎ Π½Π΅ Π΅ ΡΠ°ΠΊΠ° β ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΡΠ΅ Π³ΠΎΡΠ½ΠΈΡ ΡΠΈΡΡΠ½ΡΠΊ ΠΈ Π»Π΅ΡΠ½ΠΎ ΡΠ΅ Π³ΠΈ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΠ΅.
ΠΠ΅ΠΊΠ° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΈ Π΄ΡΡΠ³ΠΈ Π½Π°ΡΠΈΠ½ΠΈ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΡΠ΅ Π³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° cat.
ΠΠΊΠΈΠΏ cat ΠΈΠ»ΠΈ ΠΈΠ·Π²Π΅ΠΆΠ΄Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π° Π½Π° Π΅ΠΊΡΠ°Π½Π°, ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½ΠΈΡΠ° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΠ°ΠΉΠ»Π°. Π’ΠΎΠ²Π° Π·Π°Π²ΠΈΡΠΈ ΠΎΡ ΡΠΎΠ²Π° ΠΊΠΎΠ»ΠΊΠΎ ΡΠ°ΠΉΠ»Π° ΡΠ° ΠΏΡΠ΅Π΄Π°Π΄Π΅Π½ΠΈ Π½Π° ΡΠ°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΡΠΈ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ.
![[Π² Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ] Bash Π·Π° Π½Π°ΡΠΈΠ½Π°Π΅ΡΠΈ: 21 ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°](/wp-content/uploads/2019/03/708bea2f5d31e1623e9fd80ff5b576af.png)
ΠΠΎΠΌΠ°Π½Π΄Π°ΡΠ° cat
cat my_one_file.txt: ΠΊΠΎΠ³Π°ΡΠΎ Π½Π° ΡΠ°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π΄Π°Π΄Π΅ Π΅Π΄ΠΈΠ½ ΡΠ°ΠΉΠ» β ΡΡ Π³ΠΎ ΠΈΠ·Π²Π΅ΠΆΠ΄Π° Π² stdout.
ΠΠΊΠΎ ΠΏΡΠ΅Π΄Π°Π΄Π΅ΡΠ΅ Π΄Π²Π° ΡΠ°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅ΡΠ΅, ΡΠΎ ΡΡ ΡΠ΅ ΡΠ΅ Π΄ΡΡΠΆΠΈ ΠΏΠΎ ΡΠ°Π·Π»ΠΈΡΠ΅Π½ Π½Π°ΡΠΈΠ½.
cat my_file1.txt my_file2.txt: ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΠΉΠΊΠΈ Π½Π° Π²Ρ
ΠΎΠ΄ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΠ°ΠΉΠ»Π°, ΡΠ°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π³ΠΈ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½ΠΈΡΠ° ΠΈ ΠΈΠ·Π²Π΅ΠΆΠ΄Π° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠ° Π² stdout.
ΠΠΊΠΎ ΠΈΡΠΊΠ°ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠ° ΠΎΡ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½Π°ΡΠΈΡΡΠ° Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π·Π°ΠΏΠ°Π·Π΅Π½ Π² Π½ΠΎΠ² ΡΠ°ΠΉΠ», ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° >:
cat my_file1.txt my_file2.txt > my_new_file.txtΠ‘Π΅Π³Π° Π΄Π° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° ΡΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ·ΡΡΠΈΠ²Π°ΠΌΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π΄Π° ΡΠΏΠΈΡΠ°ΠΌΠ΅ ΠΏΡΠΎΡΠ΅ΡΠΈ.
βΠΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΡΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΈ
rm my_file: ΠΈΠ·ΡΡΠΈΠ²Π° ΡΠ°ΠΉΠ»Π° my_file.
rm -r my_folder: ΠΈΠ·ΡΡΠΈΠ²Π° ΠΏΠ°ΠΏΠΊΠ°ΡΠ° my_folder ΠΈ Π²ΡΠΈΡΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ ΠΏΠ°ΠΏΠΊΠΈ Π² Π½Π΅Ρ. Π€Π»Π°Π³ΡΡ -r ΠΏΠΎΠΊΠ°Π·Π²Π°, ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ Π² ΡΠ΅ΠΊΡΡΡΠΈΠ²Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ.
ΠΠ° Π΄Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π΄Π° Π½Π΅ ΠΈΡΠΊΠ° ΠΏΠΎΡΠ²ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ Π²ΡΡΠΊΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΏΠΎ ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ» ΠΈΠ»ΠΈ ΠΏΠ°ΠΏΠΊΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΡΠ»Π°Π³Π° -f.
kill 012345: ΡΠΏΠΈΡΠ° ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡ Π°ΠΊΡΠΈΠ²Π΅Π½ ΠΏΡΠΎΡΠ΅Ρ, Π΄Π°Π²Π°ΠΉΠΊΠΈ ΠΌΡ Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΠΊΠΎΡΠ΅ΠΊΡΠ½ΠΎ Π·Π°Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ°.
kill -9 012345: ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»Π½ΠΎ ΠΏΡΠ΅ΠΊΡΠ°ΡΡΠ²Π° ΡΠΊΠ°Π·Π°Π½ ΡΡΠ°ΡΡΠΈΡΠ°Π½ ΠΏΡΠΎΡΠ΅Ρ. Π€Π»Π°Π³ΡΡ -s SIGKILL ΠΎΠ·Π½Π°ΡΠ°Π²Π° ΡΡΡΠΎΡΠΎ ΠΊΠ°ΡΠΎ ΡΠ»Π°Π³Π° -9.
βΠ’ΡΡΡΠ΅Π½Π΅
ΠΠ° ΡΡΡΡΠ΅Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ. Π ΡΠ°ΡΡΠ½ΠΎΡΡ β grep, ag ΠΈ ack. ΠΠ΅ΠΊΠ° Π·Π°ΠΏΠΎΡΠ½Π΅ΠΌ Π½Π°ΡΠ΅ΡΠΎ Π·Π°ΠΏΠΎΠ·Π½Π°Π½ΡΡΠ²ΠΎ Ρ ΡΠ΅Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Ρ grep. Π’ΠΎΠ²Π° Π΅ β ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΊΠΎΡΡΠΎ ΠΎΠ±Π°ΡΠ΅ Π΅ ΠΏΠΎ-Π±Π°Π²Π½Π° ΠΎΡ Π΄ΡΡΠ³ΠΈΡΠ΅ ΠΈ Π½Π΅ Π΅ ΡΠΎΠ»ΠΊΠΎΠ²Π° ΡΠ΄ΠΎΠ±Π½Π° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅.
![[Π² Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ] Bash Π·Π° Π½Π°ΡΠΈΠ½Π°Π΅ΡΠΈ: 21 ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°](/wp-content/uploads/2019/03/bc02403dbbd0109f0dfd595eccf239c7.png)
ΠΠΎΠΌΠ°Π½Π΄Π°ΡΠ° grep
grep my_regex my_file: ΠΈΠ·Π²ΡΡΡΠ²Π° ΡΡΡΡΠ΅Π½Π΅ Π½Π° my_regex Π² my_file. ΠΡΠΈ ΠΎΡΠΊΡΠΈΡΠΈΠ΅ Π½Π° ΡΡΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ ΡΠ΅ Π²ΡΡΡΠ°, Π·Π° Π²ΡΡΠΊΠΎ ΠΎΡ ΡΡΡ
, ΡΠ΅Π»ΠΈΡΡ ΡΠ΅Π΄. ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ my_regex ΡΠ΅ ΡΡΠΈΡΠ° Π·Π° ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ.
grep -i my_regex my_file: ΡΡΡΡΠ΅Π½Π΅ΡΠΎ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° Π±Π΅Π· ΠΎΠ³Π»Π΅Π΄ Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠ° Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅.
grep -v my_regex my_file: Π²ΡΡΡΠ° Π²ΡΠΈΡΠΊΠΈ ΡΠ΅Π΄ΠΎΠ²Π΅, Π² ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ΅ ΡΡΠ΄ΡΡΠΆΠ° my_regex. Π€Π»Π°Π³ΡΡ -v ΠΎΠ·Π½Π°ΡΠ°Π²Π° ΠΈΠ½Π²Π΅ΡΡΠΈΡ, ΡΠΎΠΉ Π½Π°ΠΏΠΎΠΌΠ½Ρ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° NOT, Π½Π°Π»ΠΈΡΠ΅Π½ Π² ΠΌΠ½ΠΎΠ³ΠΎ Π΅Π·ΠΈΡΠΈ Π·Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°Π½Π΅.
grep -c my_regex my_file: Π²ΡΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π±ΡΠΎΡ Π½Π° ΡΡΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ Ρ ΡΡΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΎΠ½, Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈ Π²ΡΠ² ΡΠ°ΠΉΠ»Π°.
grep -R my_regex my_folder: ΠΈΠ·Π²ΡΡΡΠ²Π° ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ ΡΡΡΡΠ΅Π½Π΅ Π²ΡΠ² Π²ΡΠΈΡΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, Π½Π°Ρ
ΠΎΠ΄ΡΡΠΈ ΡΠ΅ Π² ΠΏΠΎΡΠΎΡΠ΅Π½Π°ΡΠ° ΠΏΠ°ΠΏΠΊΠ° ΠΈ Π² Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡΠ΅ ΠΏΠ°ΠΏΠΊΠΈ.
Π‘Π΅Π³Π° Π΄Π° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ag. Π’Ρ ΡΠ΅ ΠΏΠΎΡΠ²ΠΈ ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ grep, ΠΏΠΎ-Π±ΡΡΠ·Π° Π΅ ΠΈ Π΅ ΠΏΠΎ-ΡΠ΄ΠΎΠ±Π½Π° Π·Π° ΡΠ°Π±ΠΎΡΠ°.
![[Π² Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ] Bash Π·Π° Π½Π°ΡΠΈΠ½Π°Π΅ΡΠΈ: 21 ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°](/wp-content/uploads/2019/03/f0eeb1d38a1e9c22a8463858753dedb5.png)
ΠΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ag
ag my_regex my_file: Π²ΡΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π½ΠΎΠΌΠ΅ΡΠ° Π½Π° ΡΠ΅Π΄ΠΎΠ²Π΅ΡΠ΅ ΠΈ ΡΠ°ΠΌΠΈΡΠ΅ ΡΠ΅Π΄ΠΎΠ²Π΅, Π² ΠΊΠΎΠΈΡΠΎ ΡΠ° Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈ ΡΡΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ Ρ my_regex.
ag -i my_regex my_file: ΡΡΡΡΠ΅Π½Π΅ΡΠΎ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° Π±Π΅Π· ΠΎΠ³Π»Π΅Π΄ Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠ° Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅.
ΠΠΊΠΈΠΏ ag Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° ΡΠ°ΠΉΠ»Π° .gitignore ΠΈ ΠΈΠ·ΠΊΠ»ΡΡΠ²Π° ΠΎΡ ΠΈΠ·Ρ
ΠΎΠ΄Π° Π²ΡΠΈΡΠΊΠΎ, Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΎ Π² ΠΏΠ°ΠΏΠΊΠΈΡΠ΅ ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅, ΠΈΠ·Π±ΡΠΎΠ΅Π½ΠΈ Π² ΡΠΎΠ·ΠΈ ΡΠ°ΠΉΠ». Π’ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ.
ag my_regex my_file -- skip-vcs-ignores: ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π° Π²Π΅ΡΡΠΈΠΈΡΠ΅ (ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π° .gitignore) Π½Π΅ ΡΠ΅ Π²Π·Π΅ΠΌΠ° ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ ΠΏΡΠΈ ΡΡΡΡΠ΅Π½Π΅.
ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, Π·Π° Π΄Π° ΡΠΊΠ°ΠΆΠ΅ΡΠ΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ag ΠΊΠ°ΠΊΠ²ΠΈ ΠΏΡΡΠΈΡΠ° ΠΊΡΠΌ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΈ ΠΎΡ ΡΡΡΡΠ΅Π½Π΅ΡΠΎ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ ΡΠ°ΠΉΠ» .agignore.
Π Π½Π°ΡΠ°Π»ΠΎΡΠΎ Π½Π° ΡΠΎΠ·ΠΈ ΡΠ°Π·Π΄Π΅Π» ΡΠΏΠΎΠΌΠ΅Π½Π°Ρ
ΠΌΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ack. ΠΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ ack ΠΈ ag ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΡΡ
ΠΎΠ΄Π½ΠΈ, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠ°ΠΆΠ΅, ΡΠ΅ ΡΠ° Π²Π·Π°ΠΈΠΌΠ½ΠΎΠ·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌΠΈ Π½Π° 99%. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π°, ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ag ΡΠ°Π±ΠΎΡΠΈ ΠΏΠΎ-Π±ΡΡΠ·ΠΎ, Π·Π°ΡΠΎΠ²Π° ΠΎΠΏΠΈΡΠ°Ρ
ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π΅Ρ.
Π‘Π΅Π³Π° Π΄Π° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ Π°ΡΡ ΠΈΠ²ΠΈ.
βΠΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅
tar my_source_directory: ΠΎΠ±Π΅Π΄ΠΈΠ½ΡΠ²Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ ΠΎΡ ΠΏΠ°ΠΏΠΊΠ°ΡΠ° my_source_directory Π² Π΅Π΄ΠΈΠ½ tarball ΡΠ°ΠΉΠ». Π’Π°ΠΊΠΈΠ²Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΡΠ° ΡΠ΄ΠΎΠ±Π½ΠΈ Π·Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ Π½Π°Π±ΠΎΡΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° Π½ΡΠΊΠΎΠ³ΠΎ.
![[Π² Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ] Bash Π·Π° Π½Π°ΡΠΈΠ½Π°Π΅ΡΠΈ: 21 ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°](/wp-content/uploads/2019/03/4531ef1d4084af608fcbe91964a6710b.png)
ΠΠΎΠΌΠ°Π½Π΄Π°ΡΠ° tar
Tarball ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅, ΡΡΠ·Π΄Π°Π²Π°Π½ΠΈ ΠΎΡ ΡΠ°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ²Π°Ρ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Ρ ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΠ΅ .tar (Tape ARchive). Π’ΠΎΠ²Π°, ΡΠ΅ Π² ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ΠΈ Π² ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅, ΠΊΠΎΠΈΡΠΎ ΡΡ ΡΡΠ·Π΄Π°Π²Π°, ΡΠ΅ ΠΊΡΠΈΠ΅ Π΄ΡΠΌΠ°ΡΠ° "Π»Π΅Π½ΡΠ°", ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΊΠΎΠ»ΠΊΠΎ ΠΎΡΠ΄Π°Π²Π½Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π° ΡΠ°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°.
tar -cf my_file.tar my_source_directory: ΡΡΠ·Π΄Π°Π²Π° tarball ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅ my_file.tar Ρ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΠ°ΠΏΠΊΠ°ΡΠ° my_source_directory. Π€Π»Π°Π³ΡΡ -c ΡΠ΅ ΡΠ°Π·ΡΠΈΡΡΠ²Π° ΠΊΠ°ΡΠΎ "create" (ΡΡΠ·Π΄Π°Π²Π°Π½Π΅), Π° ΡΠ»Π°Π³ΡΡ -f ΠΊΠ°ΡΠΎ "file" (ΡΠ°ΠΉΠ»).
ΠΠ° ΠΈΠ·Π²Π»ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π½Π°ΠΌΠΈΡΠ°Ρ Π² .tar-ΡΠ°ΠΉΠ»Π°, ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° tar Ρ ΡΠ»Π°Π³ΠΎΠ²Π΅ΡΠ΅ -x ("extract", ΠΈΠ·Π²Π»ΠΈΡΠ°Π½Π΅) ΠΈ -f ("file", ΡΠ°ΠΉΠ»).
tar -xf my_file.tar: ΠΈΠ·Π²Π»ΠΈΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ ΠΎΡ my_file.tar Π² ΡΠ΅ΠΊΡΡΠ°ΡΠ° ΡΠ°Π±ΠΎΡΠ½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ.
Π‘Π΅Π³Π° Π΄Π° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° ΡΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°ΠΌΠ΅ ΠΈ ΡΠ°Π·Π°ΡΡ
ΠΈΠ²ΠΈΡΠ°ΠΌΠ΅ .tar-ΡΠ°ΠΉΠ»ΠΎΠ²Π΅.
tar -cfz my_file.tar.gz my_source_directory: ΡΡΠΊ, Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ»Π°Π³Π° -z ("zip", Π°Π»Π³ΠΎΡΠΈΡΡΠΌ Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ), Π΅ ΡΠΊΠ°Π·Π°Π½ΠΎ, ΡΠ΅ Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌ gzip (GNU zip). ΠΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΏΠ΅ΡΡΠ΅Π½Π΅ Π½Π° Π΄ΠΈΡΠΊΠΎΠ²ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΏΡΠΈ ΡΡΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ°ΠΊΠΈΠ²Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. ΠΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΡΠ΅Π΄Π°Π΄Π΅Π½ΠΈ Π½Π° Π΄ΡΡΠ³ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, ΡΠΎΠ²Π° ΡΠΏΠΎΠΌΠ°Π³Π° Π·Π° ΠΏΠΎ-Π±ΡΡΠ·ΠΎ ΠΈΠ·ΡΠ΅Π³Π»ΡΠ½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅.
Π Π°Π·Π°ΡΡ
ΠΈΠ²ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ» .tar.gz ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠΈ, Π΄ΠΎΠ±Π°Π²ΡΠΉΠΊΠΈ ΡΠ»Π°Π³ -z ΠΊΡΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° Π·Π° ΠΈΠ·Π²Π»ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ .tar-ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΠΊΠΎΡΡΠΎ ΡΠ°Π·Π³Π»Π΅Π΄Π°Ρ
ΠΌΠ΅ ΠΏΠΎ-Π³ΠΎΡΠ΅. ΠΠ·Π³Π»Π΅ΠΆΠ΄Π° ΡΠ°ΠΊΠ°:
tar -xfz my_file.tar.gz
Π’ΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈ, ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° tar ΠΈΠΌΠ° ΠΎΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΈ ΡΠ»Π°Π³ΠΎΠ²Π΅.
Bash ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΈ
Bash ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΈΡΠ΅ (Π½Π°ΡΠΈΡΠ°Ρ ΡΠ΅ ΠΎΡΠ΅ Π°Π»ΠΈΠ°ΡΠΈ ΠΈΠ»ΠΈ ΡΡΠΊΡΠ°ΡΠ΅Π½ΠΈΡ) ΡΠ° ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΡΠΊΡΠ°ΡΠ΅Π½ΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΈΠ»ΠΈ ΡΠ΅Ρ
Π½ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎΡΡΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠΈΡΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΡΡΠΊΠΎΡΡΠ²Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ°. ΠΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅, Π΄Π° ΡΠ΅ΡΠ΅ΠΌ, ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ bu, Π·Π°Π΄ ΠΊΠΎΠΉΡΠΎ ΡΡΠΎΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° python setup.py sdist bdist_wheel, ΡΠΎ Π·Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠΎΠ·ΠΈ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ.
ΠΠ° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ, Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π² ΡΠ°ΠΉΠ»Π° ~/ .bash_profile:
alias bu="python setup.py sdist bdist_wheel" ΠΠΊΠΎ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π²ΠΈ Π½ΡΠΌΠ° ΡΠ°ΠΉΠ» ~/ .bash_profile, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΎ ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ ΡΠ°ΠΌΠΈ, ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° touch. Π‘Π»Π΅Π΄ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠ° ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°ΠΉΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°, ΡΠ»Π΅Π΄ ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅. Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° Π΄Π²Π° ΡΠΈΠΌΠ²ΠΎΠ»Π° Π·Π°ΠΌΠ΅Π½Ρ Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ ΡΡΠΈΠ΄Π΅ΡΠ΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°, ΠΊΠΎΡΡΠΎ Π΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π·Π° Python ΠΏΠ°ΠΊΠ΅ΡΠΈ.
Π ~/ .bash_profile ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΈ Π·Π° Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ ΡΠ΅ΡΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ.
βΠ Π΅Π·ΡΠΌΠ΅
Π ΡΠΎΠ·ΠΈ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» ΡΠ°Π·Π³Π»Π΅Π΄Π°Ρ ΠΌΠ΅ 21 ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π° Bash ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΌΠ΅ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΈ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ. ΠΠΊΠΎ ΡΠ΅ΠΌΠ°ΡΠ° Π²ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ²Π° β ΡΠΈΠΊΡΠ» ΠΎΡ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ, ΠΏΠΎΡΠ²Π΅ΡΠ΅Π½ Π½Π° Bash. ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΠΌΠ΅ΡΠΈΡΠ΅ pdf Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠ΅Π·ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, Π°ΠΊΠΎ ΠΈΡΠΊΠ°ΡΠ΅ Π΄Π° ΠΎΠ²Π»Π°Π΄Π΅Π΅ΡΠ΅ Bash, ΠΏΠΎΠΌΠ½Π΅ΡΠ΅, ΡΠ΅ ΡΡΠΊ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΏΡΠΈ ΠΈΠ·ΡΡΠ°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΡΡΠΊΠ° Π΄ΡΡΠ³Π° ΡΠΎΡΡΡΠ΅ΡΠ½Π° ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°ΡΠ° Π΅ Π²Π°ΠΆΠ½Π°.
Π£Π²Π°ΠΆΠ°Π΅ΠΌΠΈ ΡΠΈΡΠ°ΡΠ΅Π»ΠΈ! ΠΠΎΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΠΏΠΎΠ»Π΅Π·Π½ΠΈ Π·Π° Π½Π°ΡΠΈΠ½Π°Π΅ΡΠΈ, Π±ΠΈΡ ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΊΡΠΌ ΡΠ΅Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ Π±ΡΡ Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°Π½ΠΈ Π² ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ?
β
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
