bash Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠ°
Bash-ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΡΠ°ΡΡΠ΅ΡΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ
Π― ΠΏΠΈΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π² bash, ΡΡΠΎΠ±Ρ ΡΠ°ΡΡΡΠΈΡΠ°ΡΡ Π²ΡΠ΅ΠΌΡ, ΠΏΡΠΎΡΠ΅Π΄ΡΠ΅Π΅ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΌΠΎΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ:
Π― Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΠΌΠΎΡ Π»ΠΎΠ³ΠΈΠΊΠ° Π²Π΅ΡΠ½Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ Ρ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠΊΠΎΠΉ:
» Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΊΡΠ½Π΄. «
ΡΡΠΎ-ΡΠΎ Π½Π΅ ΡΠ°ΠΊ Ρ ΠΌΠΎΠ΅ΠΉ Π‘ΡΡΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΎΡΠ΅Π½ΠΊΠΎΠΉ?
Π― ΡΡΠΈΡΠ°Ρ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ bash Π½Π΅ΡΠΈΠΏΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ, ΠΌΠ½Π΅ Π±Ρ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ, ΡΡΠΎΠ±Ρ Π² bash Π±ΡΠ» ΠΌΠ΅ΡΠΎΠ΄ «string to integer».
8 ΠΎΡΠ²Π΅ΡΠΎΠ²
Π― ΡΡΠΈΡΠ°Ρ ΠΎΡΠ΅Π½Ρ ΡΠΈΡΡΡΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ «$SECONDS»
Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΠ°ΡΠ° time ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ Π·Π΄Π΅ΡΡ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠΎΠΉ ΡΠΎΡΠΌΠ°ΡΠ°
Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΡΡΡΠΎΠΊΠ° ΡΠΎΡΠΌΠ°ΡΠ°, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠ°Ρ, ΠΊΠ°ΠΊ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄Π»Ρ ΡΡΡΠ±ΠΎΠΏΡΠΎΠ²ΠΎΠ΄ΠΎΠ² Ρ ΠΏΡΠ΅ΡΠΈΠΊΡΠΎΠΌ time Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ. The’β Π²Π²ΠΎΠ΄ΠΈΡ escape-ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΡΡΠΈΡΡΠ΅ΡΡΡ Π΄ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. ΠΡΠΎΡ escape-ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΈΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ; ΠΏΠΎΠ΄ΡΡΠΆΠΊΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠΈΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ°ΡΡΠΈ.
Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ l ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΌΠΈΠ½ΡΡΡ, ΡΠΎΡΠΌΡ MMmSS.Π€Π€Π‘. Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ p ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΡΠ°ΠΊΡΠΈΡ Π²ΠΊΠ»ΡΡΠ΅Π½Π°.
Π΅ΡΠ»ΠΈ ΡΡΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π½Π΅ Π·Π°Π΄Π°Π½Π°, Bash Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ ΠΎΠ½Π° ΠΈΠΌΠ΅Π»Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅
Π΅ΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ null, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠΎΠ½Π΅ΡΠ½Π°Ρ Π½ΠΎΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ ΡΡΡΠΎΠΊΠΈ ΡΠΎΡΠΌΠ°ΡΠ°.
ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΠ΅ΠΌΡ Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΠ΅Π³ΠΎ ΡΠ΅ΠΊΡΠ½Π΄:
ΡΠΌ. ΡΡΡΠ°Π½ΠΈΡΡ Time man:
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ bash Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²Π½ΡΠΉ ΠΏΡΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π° Π½Π΅ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ. ΠΠΎ ΡΠΈΡΡΠ΅ΠΌΠ΅ Π³Π΄Π΅ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ Π² /usr/ bin, ΠΏΠ΅ΡΠ²ΡΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ / usr / bin / time wc /ΠΈ Ρ. Π΄./Ρ ΠΎΡΡΡ
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Sleep Π² ΡΠΊΡΠΈΠΏΡΠ°Ρ Bash Π² Linux
ΠΠ»Π°Π²Π½ΠΎΠ΅ ΠΌΠ΅Π½Ρ Β» ΠΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Linux Β» ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Sleep Π² ΡΠΊΡΠΈΠΏΡΠ°Ρ Bash Π² Linux
ΠΠΎΠΌΠ°Π½Π΄Π° sleep Π² Linux β ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΡΠΎΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄. ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ, Π΅Π³ΠΎ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ β ΡΠΏΠ°ΡΡ. ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΎΠ½ Π²Π²ΠΎΠ΄ΠΈΡ Π·Π°Π΄Π΅ΡΠΆΠΊΡ Π½Π° ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ sleep Ρ x, ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΠΏΡΡΠ΅Π½Π° ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ΅Π· x ΡΠ΅ΠΊΡΠ½Π΄.
ΠΠΎΠΌΠ°Π½Π΄Π° Sleep ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
ΠΠ΄Π΅ΡΡ ΡΡΡΡΠΈΠΊΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ:
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ sleep.
ΠΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Sleep Π² Bash
Π₯ΠΎΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ΅, ΠΊΠΎΠΌΠ°Π½Π΄Π° sleep ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²Π²Π΅Π΄Π΅Π½ΠΈΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ Π² Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΡ bash. ΠΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ sleep ΡΠ΅ΡΠ΅Π· ΠΏΡΠΈΠΌΠ΅ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² bash.
ΠΠΎΠΌΠ°Π½Π΄Π° sleep Π±Π΅Π· ΡΡΡΡΠΈΠΊΡΠ° ΡΡΠΈΡΠ°Π΅ΡΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²Π°Ρ bash-ΡΠΊΡΠΈΠΏΡ Π½Π° 5 ΡΠ΅ΠΊΡΠ½Π΄, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΠΆΠΈΠΌ sleep ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠΊΡΠΈΠΏΡΠ° bash ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ Π΅Π³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ time, Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ ΡΠΊΡΠΈΠΏΡ bash Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΠ°Π±ΠΎΡΠ°Π» (Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ) Π±ΠΎΠ»Π΅Π΅ 5 ΡΠ΅ΠΊΡΠ½Π΄.
ΠΠΎΠΌΠ°Π½Π΄Π° Sleep Ρ ΡΡΡΡΠΈΠΊΡΠΎΠΌ m, h ΠΈΠ»ΠΈ d
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ Π²ΡΠ΅ΠΌΡ sleep Π² ΠΌΠΈΠ½ΡΡΠ°Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΡΠΎ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡ ΡΠΊΡΠΈΠΏΡ/ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ Π½Π° ΠΎΠ΄Π½Ρ ΠΌΠΈΠ½ΡΡΡ. ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΠ»ΠΎΠΆΠΈΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΠΎΠ², Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΡΠΈΠΈ h:
ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΊΡΠΈΠΏΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π½Π΅ΠΉ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΡΡΠΈΠΊΡΠ° d:
ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΌΠΎΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠ°Π·Π½ΡΠ΅ Π΄Π½ΠΈ ΠΈΠ»ΠΈ Π΄Π½ΠΈ Π½Π΅Π΄Π΅Π»ΠΈ.
ΠΠΎΠΌΠ°Π½Π΄Π° sleep Ρ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠ΅ΠΉ ΡΠ΅ΠΊΡΠ½Π΄, ΠΌΠΈΠ½ΡΡ, ΡΠ°ΡΠΎΠ² ΠΈ Π΄Π½Ρ
ΠΡ Π½Π΅ ΠΎΠ±ΡΠ·Π°Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΡΡΡΠΈΠΊΡ Π·Π° ΡΠ°Π·. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΡΡΡΠΈΠΊΡΠ°, ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ sleep ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠΌΠΌΠΎΠΉ Π²ΡΠ΅Ρ ΡΡΡΡΠΈΠΊΡΠΎΠ².
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΡΠΎ Π·Π°ΡΡΠ°Π²ΠΈΡ ΡΠΊΡΠΈΠΏΡ ΠΆΠ΄Π°ΡΡ 1 ΡΠ°Ρ 10 ΠΌΠΈΠ½ΡΡ ΠΈ 5 ΡΠ΅ΠΊΡΠ½Π΄. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΡΡΡΠΈΠΊΡ s Π·Π΄Π΅ΡΡ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»Π΅Π½.
ΠΠΎΠ½ΡΡΠ½ΡΠΉ ΡΠΎΠ²Π΅Ρ: ΡΠΏΠ°ΡΡ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠ΅ΠΊΡΠ½Π΄Ρ
ΠΡ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ°Ρ Π΅Π΄ΠΈΠ½ΠΈΡΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ sleep β ΡΠ΅ΠΊΡΠ½Π΄Π°. ΠΠΎ ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Π°Ρ bash-ΡΠΊΡΠΈΠΏΡ Π±ΡΠ΄Π΅Ρ ΡΠΏΠ°ΡΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄?
Π₯ΠΎΡΠΎΡΠΎ, ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ (Π΄Π΅ΡΡΡΠΈΡΠ½ΡΠ΅ ΡΠΎΡΠΊΠΈ) Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ sleep.
ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²Π²Π΅ΡΡΠΈ ΠΏΠ°ΡΠ·Ρ Π² 5 ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π΅Π΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π΅ΡΡΡΠΈΡΠ½ΡΠ΅ ΡΠΎΡΠΊΠΈ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΡΡΡΠΈΠΊΡΠ°ΠΌΠΈ.
ΠΡΠ΄Π΅Ρ Π²Π²Π΅Π΄Π΅Π½Π° Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π² 1 ΡΠ°Ρ 37 ΠΌΠΈΠ½ΡΡ ΠΈ 30 ΡΠ΅ΠΊΡΠ½Π΄.
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ Π²ΠΎΠΏΡΠΎΡΡ ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π½Π΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ ΡΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ.
ΠΡΠ»ΠΈ Π²Ρ Π½Π°ΡΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΡ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π²ΡΠ΄Π΅Π»ΠΈΡΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΡΠ΅ΠΊΡΡΠ° ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Ctrl+Enter.
ΠΡΠ²Π΅ΡΡΠΈ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π² Linux
ΠΠ·ΠΌΠ΅ΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² Linux Π½Π΅ ΠΏΡΠΎΡΡΠΎ, Π° ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ. ΠΠΎ ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ Π²Π·Π³Π»ΡΠ΄. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ time Π±ΠΎΠ»Π΅Π΅ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ.
ΠΠΎΠΌΠ°Π½Π΄Π° time
ΠΡΠ·ΠΎΠ² ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ time
ΠΡΠ»ΠΈ ΡΡΠΎΠΈΡ Π·Π°Π΄Π°ΡΠ° ΠΈΠ·ΠΌΠ΅ΡΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² Linux, ΡΠΎ Π²ΡΠ΅ ΡΡΠΎ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ β ΠΊΠΎΠΌΠ°Π½Π΄Π° time.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ:
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ·ΠΎΠ²Π° β Π·Π°ΠΌΠ΅ΡΡΠ΅ΠΌ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ sleep 1:
ΠΡΡΠ³ΠΎΠΉ time
Π’Π΅ΠΏΠ΅ΡΡ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ, ΡΡΠΎ ΠΆΠ΅ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ:
ΠΠΎΡ ΠΎΠ½ΠΎ ΡΡΠΎ! ΠΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ, time, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ Π²ΡΠ·ΡΠ²Π°Π»ΠΈ β ΡΡΠΎ Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° Shell.
Π ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ:
Π ΡΡΠΎ ΡΠΆΠ΅ Π²Π½Π΅ΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½Π°Ρ ΠΏΠΎ ΠΏΡΡΠΈ: /usr/bin.
ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ Π²ΡΠ·Π²Π°ΡΡ Π΅Π΅:
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π²ΡΠ·ΠΎΠ²Π° Π²Π½Π΅ΡΠ½Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ time
ΠΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ²ΠΎΠ΄Π° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ Π² ΡΠ°ΠΉΠ», Π²ΠΌΠ΅ΡΡΠΎ Π²ΡΠ²ΠΎΠ΄Π° Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ°ΠΉΠ» Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠ°Π½.
ΠΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠ° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ ΠΈΠ· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ ΠΈΠ»ΠΈ Π²ΡΠ²ΠΎΠ΄ΡΡΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΠΏΠΎΡΠΎΠΊ ΠΎΡΠΈΠ±ΠΎΠΊ.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ°Π±Π»ΠΎΠ½ FORMAT Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ.
Π€ΠΎΡΠΌΠ°Ρ Π²ΡΠ²ΠΎΠ΄Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ:
%Uuser %Ssystem %Eelapsed %PCPU (%Xtext+%Ddata %Mmax)k
%Iinputs+%Ooutputs (%Fmajor+%Rminor)pagefaults %Wswaps
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΎ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ.
ΠΡΠ²ΠΎΠ΄ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΡ POSIX 1003.2:
real %e
user %U
sys %S
ΠΠ½Π΅ΡΠ½ΠΈΠΉ time ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
Π§ΡΠΎΠ±Ρ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΠΊΠ°ΠΊΡΡ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄ ΠΌΡ Ρ ΠΎΡΠΈΠΌ Π²ΡΠ·Π²Π°ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ:
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π·Π°ΠΏΡΡΠΊΠ°Π»Π°ΡΡ Π²Π½Π΅ΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° time Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ:
ΠΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ Π²Π½Π΅ΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ time ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΠ΅ΡΡΠΈΠΈ.
Π§ΡΠΎΠ±Ρ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠ΅ΡΡΠΈΠΉ, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ alias Π² ΡΠ°ΠΉΠ»
/.bashrc (ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ) ΠΈΠ»ΠΈ /etc/bash.bashrc (ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π·Π°ΡΡΠΎΠ½ΡΡ Π²ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ).
ΠΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π² ΡΠΊΡΠΈΠΏΡΠ°Ρ
ΠΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ°ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΡΡΠ°ΡΡΠΊΠ° ΠΊΠΎΠ΄Π° Π² ΡΠΊΡΠΈΠΏΡΠ΅ bash.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² ΠΈΡΡΠ»Π΅Π΄ΡΠ΅ΠΌΡΠΉ ΡΠΊΡΠΈΠΏΡ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°:
How to get execution time of a script effectively?
I would like to display the completion time of a script.
18 Answers 18
Just use time when you call the script:
If time isn’t an option,
or, if you need sub-second precision and have bc installed,
Just call times without arguments upon exiting your script.
To preserve the exit status of your script, you can make it:
Or you can also add a trap on EXIT :
That way, times will be called whenever the shell exits and the exit status will be preserved.
I’m a bit late to the bandwagon, but wanted to post my solution (for sub-second precision) in case others happen to stumble upon this thread through searching. The output is in format of days, hours, minutes, and finally seconds:
Hope someone out there finds this useful!
My method for bash :
Personally, I like to wrap all my script code in some «main» function like so:
Notice how easy is to use the time command in this scenario. Obviously you’re not measuring the precise time including script parse time, but I find it accurate enough in most situations.
Yes, this calls Python, but if you can live with that then this is quite a nice, terse solution.
This question is quite old but in trying to find my favorite way of doing it this thread came up high. and I’m surprised no one mentioned it:
‘perf’ is a performance analyzing tool included in the kernel under ‘tools/perf’ and often available to install as a separate package (‘perf’ in CentOS and ‘linux-tools’ on Debian/Ubuntu). The Linux Kernal perf Wiki has much more information about it.
Running ‘perf stat’ gives quite a bit of details including average execution time right at the end:
A small shell function that can be added before commands to measure their time:
Then use it in your script, or on your command line like so:
1.020 sec, as shown here:
What a beautiful thing. You can put any command after it, and it outputs the result in a nice, human-readable form. I really like to use it for timing builds. Ex:
. or for git operations which can potentially be really long, so I can develop realistic mental expectations:
Note that dt_min gets rounded from 0.01666666666. (1 second = that many minutes) to 0.017 in this case since I’m using the printf function to round. The sleep 1; part below is where you’d call your script to run and time, but I’m just sleeping for 1 second instead for the sake of this demo.
Related:
Using only bash it is also possible to measure and calculate the time duration for a portion of the shell script (or the elapsed time for the entire script):
you can now either just print the difference:
if you only need incremental duration do:
You can also store the duration in a variable:
Use bash time builtin?
But if you need an efficient solution to get the times with millisecond precision and need them into variables such that the original output remains undisturbed you may combine process substitution with some redirections around time which is much faster than calling external programs and allows redirections around the timing wrapper script as on the original command/script.
Longer variant that keeps original stdout and stderr separate of each other:
You can even fake a floating point addition in bash without calling bc which would be much slower:
Bash-ΡΠΊΡΠΈΠΏΡΡ, ΡΠ°ΡΡΡ 5: ΡΠΈΠ³Π½Π°Π»Ρ, ΡΠΎΠ½ΠΎΠ²ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΡΠΌΠΈ
Π ΠΏΡΠΎΡΠ»ΡΠΉ ΡΠ°Π· ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ ΠΎ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΏΠΎΡΠΎΠΊΠ°ΠΌΠΈ Π²Π²ΠΎΠ΄Π°, Π²ΡΠ²ΠΎΠ΄Π° ΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ Π² bash-ΡΠΊΡΠΈΠΏΡΠ°Ρ , ΠΎ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΠ°Ρ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΎ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΡΠΎΠΊΠΎΠ². Π‘Π΅ΠΉΡΠ°Ρ Π²Ρ Π·Π½Π°Π΅ΡΠ΅ ΡΠΆΠ΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΈΡΠ°ΡΡ ΡΡΠΎ-ΡΠΎ ΡΠ²ΠΎΡ. ΠΠ° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΡ bash Ρ Π²Π°Ρ Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠ³ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π²ΠΎΠΏΡΠΎΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΌΠΈ ΡΠΊΡΠΈΠΏΡΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ Π·Π°ΠΏΡΡΠΊ.
ΠΠΎ ΡΠΈΡ ΠΏΠΎΡ ΠΌΡ Π²Π²ΠΎΠ΄ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½Π° ΡΠΊΡΠΈΠΏΡΠΎΠ² Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π»ΠΈ Enter, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΎ ΠΊ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΌΡ Π·Π°ΠΏΡΡΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, Π½ΠΎ ΡΡΠΎ β Π½Π΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π². Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΡΠΎΠΌ ΠΊΠ°ΠΊ ΡΠΊΡΠΈΠΏΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠΈΠ³Π½Π°Π»Π°ΠΌΠΈ Linux, ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π°Ρ ΠΊ Π·Π°ΠΏΡΡΠΊΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΈ ΠΊ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠΌΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ.
Π‘ΠΈΠ³Π½Π°Π»Ρ Linux
Π Linux ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΡ Π΄Π΅ΡΡΡΠΊΠΎΠ² ΡΠΈΠ³Π½Π°Π»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΡ ΡΠΏΠΈΡΠΎΠΊ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° ΠΏΡΠΈΠ³ΠΎΠ΄ΡΡΡΡ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ.
ΠΠΎΠ΄ ΡΠΈΠ³Π½Π°Π»Π° | ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
1 | SIGHUP | ΠΠ°ΠΊΡΡΡΠΈΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° |
2 | SIGINT | Π‘ΠΈΠ³Π½Π°Π» ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° (CTRL + C) |
3 | SIGQUIT | Π‘ΠΈΠ³Π½Π°Π» ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° (CTRL + \) Ρ Π΄Π°ΠΌΠΏΠΎΠΌ ΠΏΠ°ΠΌΡΡΠΈ |
9 | SIGKILL | ΠΠ΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎΠ΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠ° |
15 | SIGTERM | Π‘ΠΈΠ³Π½Π°Π» Π·Π°ΠΏΡΠΎΡΠ° Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° |
17 | SIGSTOP | ΠΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ°, Π½ΠΎ Π½Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΡ |
18 | SIGTSTP | ΠΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠ° Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° (CTRL + Z), Π½ΠΎ Π½Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ |
19 | SIGCONT | ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°Π½Π΅Π΅ ΠΎΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° |
ΠΡΠ»ΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° bash ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠΈΠ³Π½Π°Π» SIGHUP ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΊΡΡΠ²Π°Π΅ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π», ΠΎΠ½Π° Π·Π°Π²Π΅ΡΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ. ΠΠ΅ΡΠ΅Π΄ Π²ΡΡ ΠΎΠ΄ΠΎΠΌ ΠΎΠ½Π° ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΈΠ³Π½Π°Π» SIGHUP Π²ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΠΌ Π² Π½Π΅ΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌ, Π²ΠΊΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠ΅ΡΡ ΡΠΊΡΠΈΠΏΡΡ.
Bash-ΡΠΊΡΠΈΠΏΡΡ Π½Π΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΡΡ ΡΡΠΈ ΡΠΈΠ³Π½Π°Π»Ρ, Π½ΠΎ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°ΡΡ ΠΈΡ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π½Π΅ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ ΡΠΊΡΠΈΠΏΡΠ° ΠΊ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡΠΌ, Π²ΡΠ·ΡΠ²Π°Π΅ΠΌΡΠΌ ΡΠΈΠ³Π½Π°Π»Π°ΠΌΠΈ.
ΠΡΠΏΡΠ°Π²ΠΊΠ° ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΡΠΊΡΠΈΠΏΡΠ°ΠΌ
ΠΠ±ΠΎΠ»ΠΎΡΠΊΠ° bash ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΊΡΠΈΠΏΡΠ°ΠΌ ΡΠΈΠ³Π½Π°Π»Ρ, ΠΏΠΎΠ»ΡΠ·ΡΡΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡΠΌΠΈ ΠΊΠ»Π°Π²ΠΈΡ Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ΅. ΠΡΠΎ ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΊΡΡΠ°ΡΠΈ Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉΡΡ ΡΠΊΡΠΈΠΏΡ ΠΈΠ»ΠΈ Π·Π°Π²Π΅ΡΡΠΈΡΡ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΡ.
ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠ°
ΠΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ CTRL + C Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠΈΠ³Π½Π°Π» SIGINT ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π΅Π³ΠΎ Π²ΡΠ΅ΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΌΡΡ Π² ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ΅, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΈΡ ΡΠ°Π±ΠΎΡΡ.
ΠΡΠΏΠΎΠ»Π½ΠΈΠΌ Π² ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ΅ ΡΠ°ΠΊΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ
ΠΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠ°
Π§ΠΈΡΠ»ΠΎ Π² ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΊΠ°Ρ β ΡΡΠΎ Π½ΠΎΠΌΠ΅Ρ Π·Π°Π΄Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° Π½Π°Π·Π½Π°ΡΠ°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΡ. ΠΠ±ΠΎΠ»ΠΎΡΠΊΠ° ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΡ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠ΅ΡΡ Π² Π½Π΅ΠΉ, ΠΊΠ°ΠΊ Π·Π°Π΄Π°Π½ΠΈΡ Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ Π½ΠΎΠΌΠ΅ΡΠ°ΠΌΠΈ. ΠΠ΅ΡΠ²ΠΎΠΌΡ ΠΏΡΠΎΡΠ΅ΡΡΡ Π½Π°Π·Π½Π°ΡΠ°Π΅ΡΡΡ Π½ΠΎΠΌΠ΅Ρ 1, Π²ΡΠΎΡΠΎΠΌΡ β 2, ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅.
ΠΡΠ»ΠΈ Π²Ρ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅, ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π½ΠΎΠ΅ ΠΊ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ΅, ΠΈ ΠΏΠΎΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ Π²ΡΠΉΡΠΈ ΠΈΠ· Π½Π΅Ρ, bash Π²ΡΠ΄Π°ΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅.
ΠΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
ΠΡΠ³Π»ΡΠ΄ΠΈΡ Π΅Ρ Π²ΡΠ·ΠΎΠ² ΡΠ°ΠΊ:
ΠΠ΅ΡΠ΅Ρ Π²Π°Ρ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²
ΠΠΎΠΌΠ°Π½Π΄Π° trap ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΊΡΠΈΠΏΡΡ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΡΠΈΠ³Π½Π°Π»Ρ, Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ Π±Π΅Π· Π΅Π³ΠΎ ΡΡΠ°ΡΡΠΈΡ.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ trap Π·Π°Π΄Π°ΡΡΡΡ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π΄ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ, ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΡΠΈΠ³Π½Π°Π»ΠΎΠ², ΡΠ°Π·Π΄Π΅Π»ΡΠ½Π½ΡΡ ΠΏΡΠΎΠ±Π΅Π»Π°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠΈΡΡ. Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ Π²ΡΠ΅Π³ΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠ³Π½Π°Π»:
ΠΠ΅ΡΠ΅Ρ Π²Π°Ρ ΡΠΈΠ³Π½Π°Π»Π° Π²ΡΡ ΠΎΠ΄Π° ΠΈΠ· ΡΠΊΡΠΈΠΏΡΠ°
ΠΠ΅ΡΠ΅Ρ Π²Π°ΡΠΈΡΡ ΡΠΈΠ³Π½Π°Π» Π²ΡΡ ΠΎΠ΄Π° ΠΈΠ· ΡΠΊΡΠΈΠΏΡΠ° ΠΌΠΎΠΆΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π² ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ trap ΠΈΠΌΡ ΡΠΈΠ³Π½Π°Π»Π° EXIT :
ΠΠ΅ΡΠ΅Ρ Π²Π°Ρ ΡΠΈΠ³Π½Π°Π»Π° Π²ΡΡ ΠΎΠ΄Π° ΠΈΠ· ΡΠΊΡΠΈΠΏΡΠ°
ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ΅Π½Π½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΈ ΠΎΡΠΌΠ΅Π½Π° ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ°
ΠΠ»Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ΅Π½Π½ΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠΌ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ trap Ρ Π½ΠΎΠ²ΡΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ:
ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ° ΡΠΈΠ³Π½Π°Π»ΠΎΠ²
ΠΠΎΡΠ»Π΅ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΈΠ³Π½Π°Π»Ρ Π±ΡΠ΄ΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΏΠΎ-Π½ΠΎΠ²ΠΎΠΌΡ.
Π Π½Π°ΠΆΠΌΡΠΌ CTRL + C Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ΅.
Π‘ΠΈΠ³Π½Π°Π», ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ΅Π½Π½ΡΠΉ Π΄ΠΎ ΠΎΡΠΌΠ΅Π½Ρ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ°
ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅
ΠΠ½ΠΎΠ³Π΄Π° bash-ΡΠΊΡΠΈΠΏΡΠ°ΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π΅ΠΌΠ°Π»ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π΅ΠΊΠΎΠ΅ΠΉ Π·Π°Π΄Π°ΡΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅, Π½Π΅ Π΄ΠΎΠΆΠΈΠ΄Π°ΡΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠ°. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ ΡΠΆ ΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎ.
ΠΠ°ΠΏΡΡΡΠΈΠΌ Π΅Π³ΠΎ, ΡΠΊΠ°Π·Π°Π² ΠΏΠΎΡΠ»Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΡΠΈΠΌΠ²ΠΎΠ» Π°ΠΌΠΏΠ΅ΡΡΠ°Π½Π΄Π° ( & ):
ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠ΅Π½ ΠΊΠ°ΠΊ ΡΠΎΠ½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ.
ΠΠ°ΠΏΡΡΠΊ ΡΠΊΡΠΈΠΏΡΠ° Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅
Π‘ΠΊΡΠΈΠΏΡ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠ΅Π½ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ΅, Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π» Π²ΡΠ²Π΅Π΄Π΅ΡΡΡ Π΅Π³ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, Π° ΠΊΠΎΠ³Π΄Π° Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π°Π²Π΅ΡΡΠΈΡΡΡ, Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΡΡΠΎΠΌ.
ΠΡΠΈ ΡΠ°ΠΊΠΎΠΌ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π΅, Π΅ΡΠ»ΠΈ Π²ΡΠΉΡΠΈ ΠΈΠ· ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°, ΡΠΊΡΠΈΠΏΡ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉΡΡ Π² ΡΠΎΠ½Π΅, ΡΠ°ΠΊ ΠΆΠ΅ Π·Π°Π²Π΅ΡΡΠΈΡ ΡΠ°Π±ΠΎΡΡ.
Π§ΡΠΎ Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΊΡΠΈΠΏΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π» ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΊΡΡΡΠΈΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°?
ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠ², Π½Π΅ Π·Π°Π²Π΅ΡΡΠ°ΡΡΠΈΡ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈ Π·Π°ΠΊΡΡΡΠΈΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°
ΠΡΠΈΠΌΠ΅Π½ΠΈΠΌ ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΈΠΊΡ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ Π½Π°ΡΠ΅Π³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°:
ΠΠΎΡ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ΠΎ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π».
ΠΡΠΎΡΠΌΠΎΡΡ Π·Π°Π΄Π°Π½ΠΈΠΉ
ΠΠΎΠΌΠ°Π½Π΄Π° jobs ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠ΅ΠΊΡΡΠΈΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π² ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ΅. ΠΠ°ΠΏΠΈΡΠ΅ΠΌ ΡΠ°ΠΊΠΎΠΉ ΡΠΊΡΠΈΠΏΡ:
ΠΠ°ΠΏΡΡΠΊ ΠΈ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠΊΡΠΈΠΏΡΠ°
ΠΠ°ΠΏΡΡΡΠΈΠΌ ΡΠΎΡ ΠΆΠ΅ ΡΠΊΡΠΈΠΏΡ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ Π²ΡΠ²ΠΎΠ΄ ΡΠΊΡΠΈΠΏΡΠ° Π² ΡΠ°ΠΉΠ» ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ½ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π²ΡΠ²ΠΎΠ΄ΠΈΠ» Π½Π° ΡΠΊΡΠ°Π½Π΅:
ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΎ ΡΠΊΡΠΈΠΏΡΠ°Ρ
ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ Π·Π°Π΄Π°Π½ΠΈΠΉ
Π’Π΅ΠΏΠ΅ΡΡ ΡΠΊΡΠΈΠΏΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅.
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ ΠΈΠΌΠ΅Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ Π·Π°Π΄Π°Π½ΠΈΠΉ, Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·Π°Π΄Π°Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ bg ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π΅Π³ΠΎ Π½ΠΎΠΌΠ΅Ρ.
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ° Π·Π°Π΄Π°Π½ΠΈΡ Π² ΠΎΠ±ΡΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ fg :
ΠΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°ΠΏΡΡΠΊΠ° ΡΠΊΡΠΈΠΏΡΠΎΠ²
ΠΡΠ·ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ at Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ°ΡΠΏΠΎΠ·Π½Π°ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΠΌΠ°ΡΠΎΠ² ΡΠΊΠ°Π·Π°Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°Π½ΠΈΠΉ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ at
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΏΠΈΡΠΎΠΊ Π·Π°Π΄Π°Π½ΠΈΠΉ, ΠΎΠΆΠΈΠ΄Π°ΡΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ atq :
Π‘ΠΏΠΈΡΠΎΠΊ Π·Π°Π΄Π°Π½ΠΈΠΉ, ΠΎΠΆΠΈΠ΄Π°ΡΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Π½ΠΈΠΉ, ΠΎΠΆΠΈΠ΄Π°ΡΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
ΠΠ°ΠΏΡΡΠΊ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΏΠΎ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ
ΠΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΊΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ° ΡΠΊΡΠΈΠΏΡΠΎΠ² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ at ΡΠΏΠΎΡΠΎΠ±Π½ΠΎ ΠΎΠ±Π»Π΅Π³ΡΠΈΡΡ ΠΆΠΈΠ·Π½Ρ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ . ΠΠΎ ΠΊΠ°ΠΊ Π±ΡΡΡ, Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΊΡΠΈΠΏΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΡΡ Π² ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ, ΠΈΠ»ΠΈ ΡΠ°Π· Π² Π½Π΅Π΄Π΅Π»Ρ, ΠΈΠ»ΠΈ ΡΠ°Π· Π² ΠΌΠ΅ΡΡΡ?
Crontab Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΡΠΎΠ½Π΅ ΠΈ, ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°ΡΡΡ Π½Π° Π΄Π°Π½Π½ΡΡ Π² ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΡ cron-ΡΠ°Π±Π»ΠΈΡΠ°Ρ , Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ Π·Π°Π΄Π°Π½ΠΈΡ ΠΏΠΎ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ.
ΠΡΠΈ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π·Π°ΠΏΡΡΠΊΠ° ΡΠΊΡΠΈΠΏΡΠ° ΠΏΠΎ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ crontab ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π·Π°Π΄Π°Π½ΠΈΠ΅, Π² ΡΠ°ΠΊΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅:
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π½Π°Π΄ΠΎ, ΡΡΠΎΠ±Ρ Π½Π΅ΠΊΠΈΠΉ ΡΠΊΡΠΈΠΏΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ command Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΡΡ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ Π² 10:30, ΡΡΠΎΠΌΡ Π±ΡΠ΄Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠ°Ρ Π·Π°ΠΏΠΈΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΠΉ:
ΠΠ΄Π΅ΡΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» Β« * Β», ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ Π΄Π»Ρ ΠΏΠΎΠ»Π΅ΠΉ, Π·Π°Π΄Π°ΡΡΠΈΡ Π΄Π΅Π½Ρ ΠΌΠ΅ΡΡΡΠ°, ΠΌΠ΅ΡΡΡ ΠΈ Π΄Π΅Π½Ρ Π½Π΅Π΄Π΅Π»ΠΈ, ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠΎ, ΡΡΠΎ cron Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΡΠ° Π² 10:30.
ΠΡΠ»ΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π°Π΄ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΊΡΠΈΠΏΡ Π·Π°ΠΏΡΡΠΊΠ°Π»ΡΡ Π² 4:30PM ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΠΎΠ½Π΅Π΄Π΅Π»ΡΠ½ΠΈΠΊ, ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΠΉ ΡΠ°ΠΊΡΡ Π·Π°ΠΏΠΈΡΡ:
ΠΡΠΌΠ΅ΡΠ°ΡΠΈΡ Π΄Π½Π΅ΠΉ Π½Π΅Π΄Π΅Π»ΠΈ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ 0, 0 ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π²ΠΎΡΠΊΡΠ΅ΡΠ΅Π½ΡΠ΅, 6 β ΡΡΠ±Π±ΠΎΡΡ. ΠΠΎΡ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΈΠΌΠ΅Ρ. ΠΠ΄Π΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π² 12 ΡΠ°ΡΠΎΠ² Π΄Π½Ρ Π² ΠΏΠ΅ΡΠ²ΡΠΉ Π΄Π΅Π½Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΡΠ°.
ΠΠ°ΡΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ:
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΠΊΡΠΈΠΏΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡΡΡ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ Π² 10:30. ΠΡΠ»ΠΈ Π²Ρ ΡΡΠΎΠ»ΠΊΠ½ΡΡΠ΅ΡΡ Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ Β«Resource temporarily unavailableΒ», Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π½ΠΈΠΆΠ΅ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Ρ ΠΏΡΠ°Π²Π°ΠΌΠΈ root-ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ:
ΠΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π·Π°ΠΏΡΡΠΊ ΡΠΊΡΠΈΠΏΡΠΎΠ² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ cron ΠΌΠΎΠΆΠ½ΠΎ Π΅ΡΡ ΠΏΡΠΎΡΠ΅, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π²ΡΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΠΌΠΈ:
ΠΡΠ»ΠΈ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ ΡΠ°ΠΉΠ» ΡΠΊΡΠΈΠΏΡΠ° Π² ΠΎΠ΄Π½Ρ ΠΈΠ· Π½ΠΈΡ , ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΊ Π΅Π³ΠΎ Π΅ΠΆΠ΅ΡΠ°ΡΠ½ΠΎΠΌΡ, Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΌΡ, Π΅ΠΆΠ΅Π½Π΅Π΄Π΅Π»ΡΠ½ΠΎΠΌΡ ΠΈΠ»ΠΈ Π΅ΠΆΠ΅ΠΌΠ΅ΡΡΡΠ½ΠΎΠΌΡ Π·Π°ΠΏΡΡΠΊΡ.
ΠΠ°ΠΏΡΡΠΊ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΏΡΠΈ Π²Ρ ΠΎΠ΄Π΅ Π² ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΠΏΡΡΠΊ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΠΏΠΈΡΠ°ΡΡΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ, ΡΠ°ΠΊΠΈΠ΅, ΠΊΠ°ΠΊ Π²Ρ ΠΎΠ΄ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² ΡΠΈΡΡΠ΅ΠΌΡ ΠΈΠ»ΠΈ Π·Π°ΠΏΡΡΠΊ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ. Π’ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΠΎ ΡΠ°ΠΉΠ»Π°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π² ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ:
ΠΡΠΎΠ³ΠΈ
Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΌΡ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈ Π²ΠΎΠΏΡΠΎΡΡ, ΠΊΠ°ΡΠ°ΡΡΠΈΠ΅ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΆΠΈΠ·Π½Π΅Π½Π½ΡΠΌ ΡΠΈΠΊΠ»ΠΎΠΌ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΊΡΠΈΠΏΡΡ Π² ΡΠΎΠ½Π΅, ΠΊΠ°ΠΊ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ. Π ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π· ΡΠΈΡΠ°ΠΉΡΠ΅ ΠΎ ΡΡΠ½ΠΊΡΠΈΡΡ Π² bash-ΡΠΊΡΠΈΠΏΡΠ°Ρ ΠΈ ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ.
Π£Π²Π°ΠΆΠ°Π΅ΠΌΡΠ΅ ΡΠΈΡΠ°ΡΠ΅Π»ΠΈ! Π Π²Ρ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΏΠΎ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ? ΠΡΠ»ΠΈ Π΄Π° β ΡΠ°ΡΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ° ΠΎ Π½ΠΈΡ .