Найти Π² Π”Π·Π΅Π½Π΅
Π£Ρ€ΠΎΠΊΠΈ Linux

πŸ“‘ РаспараллСливаниС Π·Π°Π΄Π°Ρ‡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GNU Parallel

πŸ“‘ РаспараллСливаниС Π·Π°Π΄Π°Ρ‡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GNU Parallel Π₯ΠΎΡ‡Π΅ΡˆΡŒ Π·Π° считанныС ΠΌΠΈΠ½ΡƒΡ‚Ρ‹ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скриптов ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄? Π’ΠΎΠ³Π΄Π° знакомься с ΠΌΠΎΡ‰Π½Ρ‹ΠΌ инструмСнтом β€” GNU Parallel! Он ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² настоящиС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ тысяч Π·Π°Π΄Π°Ρ‡ Π·Π° сСкунды. Π’ этом ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ раскроСм сСкрСты настоящих ΠΏΡ€ΠΎΡ„ΠΈ. НСкоторыС прСимущСства GNU Parallel: - ΠœΡƒΠ»ΡŒΡ‚ΠΈΠ·Π°Π΄Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… Π·Π°ΠΌΠΎΡ€ΠΎΡ‡Π΅ΠΊ - ИспользованиС всСх ядСр CPU - ΠŸΡ€ΠΎΡΡ‚ΠΎΠ΅ синтаксичСскоС ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅ - Π›Π΅Π³ΠΊΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ мноТСство Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, достаточно Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ: ls *.txt | parallel -j4 gzip Π­Ρ‚ΠΎ соТмёт всС *.txt Ρ„Π°ΠΉΠ»Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ 4 ΠΏΠΎΡ‚ΠΎΠΊΠ°. НС бойся ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ β€” инструмСнт Π³ΠΈΠ±ΠΊΠΈΠΉ, ΠΊΠ°ΠΊ ΡˆΠ²Π΅ΠΉΡ†Π°Ρ€ΡΠΊΠΈΠΉ Π½ΠΎΠΆ! Π’Π°ΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ β€” ΠΎΠ½ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎ Ρ€Π°ΡΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ²Π°Ρ‚ΡŒ тяТСлыС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ врСмя. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ с трСмя Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ°ΠΌΠΈ собираСт Π΄Π°Π½Π½Ρ‹Π΅ β€” GNU Parallel Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС, ΠΈ Ρ‚Π²ΠΎΠΉ сСрвСр ΠΏΡ€ΠΈ этом Π½Π΅ напрягаСтся. МногиС ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ систСмн

πŸ“‘ РаспараллСливаниС Π·Π°Π΄Π°Ρ‡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GNU Parallel

Π₯ΠΎΡ‡Π΅ΡˆΡŒ Π·Π° считанныС ΠΌΠΈΠ½ΡƒΡ‚Ρ‹ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скриптов ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄? Π’ΠΎΠ³Π΄Π° знакомься с ΠΌΠΎΡ‰Π½Ρ‹ΠΌ инструмСнтом β€” GNU Parallel! Он ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² настоящиС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ тысяч Π·Π°Π΄Π°Ρ‡ Π·Π° сСкунды. Π’ этом ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ раскроСм сСкрСты настоящих ΠΏΡ€ΠΎΡ„ΠΈ.

НСкоторыС прСимущСства GNU Parallel:

- ΠœΡƒΠ»ΡŒΡ‚ΠΈΠ·Π°Π΄Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… Π·Π°ΠΌΠΎΡ€ΠΎΡ‡Π΅ΠΊ

- ИспользованиС всСх ядСр CPU

- ΠŸΡ€ΠΎΡΡ‚ΠΎΠ΅ синтаксичСскоС ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅

- Π›Π΅Π³ΠΊΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ мноТСство Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, достаточно Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ:

ls *.txt | parallel -j4 gzip

Π­Ρ‚ΠΎ соТмёт всС *.txt Ρ„Π°ΠΉΠ»Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ 4 ΠΏΠΎΡ‚ΠΎΠΊΠ°. НС бойся ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ β€” инструмСнт Π³ΠΈΠ±ΠΊΠΈΠΉ, ΠΊΠ°ΠΊ ΡˆΠ²Π΅ΠΉΡ†Π°Ρ€ΡΠΊΠΈΠΉ Π½ΠΎΠΆ! Π’Π°ΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ β€” ΠΎΠ½ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎ Ρ€Π°ΡΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ²Π°Ρ‚ΡŒ тяТСлыС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ врСмя. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ с трСмя Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ°ΠΌΠΈ собираСт Π΄Π°Π½Π½Ρ‹Π΅ β€” GNU Parallel Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС, ΠΈ Ρ‚Π²ΠΎΠΉ сСрвСр ΠΏΡ€ΠΈ этом Π½Π΅ напрягаСтся.

МногиС ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ систСмныС администраторы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π΅Π³ΠΎ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ дСсятки Π·Π°Π΄Π°Ρ‡ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ. А Ρ‚Ρ‹ ΡƒΠΆΠ΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» свою Ρ€ΡƒΠΊΡƒ Π² ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ?

Как Π΄ΡƒΠΌΠ°Π΅ΡˆΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GNU Parallel Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅?

🧠 ΠŸΡ€ΠΎΠΊΠ°Ρ‡Π°ΠΉ свои скилы Π² Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ-ΠΊΠ°Π½Π°Π»Π΅ https://t.me/LinuxSkill, Π° ΠΏΡ€ΠΎΠΉΡ‚ΠΈ тСсты Π½Π° Π·Π½Π°Π½ΠΈΠ΅ Linux β€” Π² Π±ΠΎΡ‚Π΅ https://t.me/gradeliftbot!

πŸ“© Π—Π°Π²Ρ‚Ρ€Π°: Как Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Fail2Ban Π·Π° 5 ΠΌΠΈΠ½ΡƒΡ‚! Π’ΠΊΠ»ΡŽΡ‡ΠΈ πŸ”” Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ!