Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΠΊΠΎΡ€Π·ΠΈΠ½ΡƒΠŸΠΎΠ·Π²ΠΎΠ½ΠΈΡ‚ΡŒ
Найти Π² Π”Π·Π΅Π½Π΅
Π£Ρ€ΠΎΠΊΠΈ Linux

πŸ› οΈ Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ trap-Ρ‹ ΠΈ Π»ΠΎΠ²ΡƒΡˆΠΊΠΈ Π² bash: Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ Π·Π°Ρ‰ΠΈΡ‚Ρƒ скриптов

πŸ› οΈ Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ trap-Ρ‹ ΠΈ Π»ΠΎΠ²ΡƒΡˆΠΊΠΈ Π² bash: Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ Π·Π°Ρ‰ΠΈΡ‚Ρƒ скриптов ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΡƒΠ²Π»Π΅Ρ‡Ρ‘Π½Π½Ρ‹Π΅ энтузиасты Linux! πŸš€ Если Π²Ρ‹ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ писали скрипты, Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ Π»Π΅Π³ΠΊΠΎ ΠΈΡ… "ΡΠ»ΠΎΠΌΠ°Ρ‚ΡŒ" ΠΈΠ»ΠΈ Π΄Π°Ρ‚ΡŒ сбой β€” эта ΡˆΡ‚ΡƒΠΊΠ° для вас. ΠŸΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ traps β€” Π²ΠΎΠ»ΡˆΠ΅Π±Π½Ρ‹Ρ… Π»ΠΎΠ²ΡƒΡˆΠΊΠ°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π»ΠΎΠ²ΠΊΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ошибками, Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ΠΌ скрипта ΠΈΠ»ΠΈ очисткой рСсурсов. Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для автоматичСской очистки Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сигналов, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Ctrl+C. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ прСимущСства: - Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ - АвтоматичСская ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок - Удобство ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с внСшними ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π΄Π°Ρ‚ΡŒ trap, достаточно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ строку: trap 'ΠΊΠΎΠΌΠ°Π½Π΄Π°' сигналы НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π»ΠΎΠ²ΠΊΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ сцСнарий ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹: trap 'rm -f /tmp/tempfile' EXIT Или Π»ΠΎΠ²ΠΈΡ‚ΡŒ Ctrl+C: trap 'echo "ΠŸΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅!"; exit' SIGINT Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, скрипт станСт Π±ΠΎΠ»Π΅Π΅ "ΠΆΠΈΠ²Ρ‹ΠΌ" ΠΈ Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½Ρ‹ΠΌ. Π₯ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ своих скриптов? Как Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ trap Π² своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…? Π”Π΅Π»ΠΈΡ‚Π΅ΡΡŒ идСями Π² коммСнтариях! -

πŸ› οΈ Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ trap-Ρ‹ ΠΈ Π»ΠΎΠ²ΡƒΡˆΠΊΠΈ Π² bash: Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ Π·Π°Ρ‰ΠΈΡ‚Ρƒ скриптов

ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΡƒΠ²Π»Π΅Ρ‡Ρ‘Π½Π½Ρ‹Π΅ энтузиасты Linux! πŸš€

Если Π²Ρ‹ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ писали скрипты, Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ Π»Π΅Π³ΠΊΠΎ ΠΈΡ… "ΡΠ»ΠΎΠΌΠ°Ρ‚ΡŒ" ΠΈΠ»ΠΈ Π΄Π°Ρ‚ΡŒ сбой β€” эта ΡˆΡ‚ΡƒΠΊΠ° для вас.

ΠŸΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ traps β€” Π²ΠΎΠ»ΡˆΠ΅Π±Π½Ρ‹Ρ… Π»ΠΎΠ²ΡƒΡˆΠΊΠ°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π»ΠΎΠ²ΠΊΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ошибками, Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ΠΌ скрипта ΠΈΠ»ΠΈ очисткой рСсурсов.

Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для автоматичСской очистки Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сигналов, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Ctrl+C.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ прСимущСства:

- Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ

- АвтоматичСская ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок

- Удобство ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с внСшними ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π΄Π°Ρ‚ΡŒ trap, достаточно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ строку:

trap 'ΠΊΠΎΠΌΠ°Π½Π΄Π°' сигналы

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π»ΠΎΠ²ΠΊΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ сцСнарий ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹:

trap 'rm -f /tmp/tempfile' EXIT

Или Π»ΠΎΠ²ΠΈΡ‚ΡŒ Ctrl+C:

trap 'echo "ΠŸΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅!"; exit' SIGINT

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, скрипт станСт Π±ΠΎΠ»Π΅Π΅ "ΠΆΠΈΠ²Ρ‹ΠΌ" ΠΈ Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½Ρ‹ΠΌ. Π₯ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ своих скриптов?

Как Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ trap Π² своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…? Π”Π΅Π»ΠΈΡ‚Π΅ΡΡŒ идСями Π² коммСнтариях!

- ΠŸΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° https://t.me/LinuxSkill β€” большС ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… статСй, Π° Π² Π±ΠΎΡ‚Π΅ https://t.me/gradeliftbot ΠΆΠ΄ΡƒΡ‚ тСсты ΠΈ вакансии!