Termux шаг Π·Π° шагом (Π§Π°ΡΡ‚ΡŒ 2)

Π’ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΉ части ΠΌΡ‹ с Π²Π°ΠΌΠΈ познакомились с Π±Π°Π·ΠΎΠ²Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ Termux’Π°, настроили SSH соСдинСниС с ПК, Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ alias’Ρ‹ ΠΈ установили нСсколько ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚. Π’ этот Ρ€Π°Π· Π½Π°ΠΌ прСдстоит ΡˆΠ°Π³Π½ΡƒΡ‚ΡŒ Π΅Ρ‰Π΅ дальшС, ΠΌΡ‹ с Π²Π°ΠΌΠΈ:

  • ΡƒΠ·Π½Π°Π΅ΠΌ ΠΏΡ€ΠΎ Termux:API
  • установим Python ΠΈ nano, Π° Ρ‚Π°ΠΊΠΆΠ΅ напишСм «Hello, world!» Π½Π° Python
  • ΡƒΠ·Π½Π°Π΅ΠΌ ΠΏΡ€ΠΎ bash-скрипты, ΠΈ напишСм скрипт с использованиСм Termux:API
  • ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ bash-скрипт, Termux:API ΠΈ Python напишСм ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΊΡƒ

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°ΡŽΡ‚ Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Ρ‚ΠΎ со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ шага я Π½Π΅ Π±ΡƒΠ΄Ρƒ Ρ‚Π°ΠΊ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°ΡΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ дСйствиС, Π½ΠΎ Ρ‚Π°ΠΌ Π³Π΄Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ затруднСния, ΠΏΠΎΡΡΠ½ΡΡ‚ΡŒ Π±ΡƒΠ΄Ρƒ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

Π― часто ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽ alias’Ρ‹, поэтому ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² этой части сокращСния ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ здСсь:

alias updg='apt update && apt upgrade'
alias py='python'

План Π³ΠΎΡ‚ΠΎΠ², ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ! И ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅ Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎ «Π²ΠΎΠ»ΡˆΠ΅Π±Π½Ρ‹ΠΉ Tab» (Π‘ΠΌ. Π§Π°ΡΡ‚ΡŒ 1).

Π¨Π°Π³ 4

ΠŸΠΎΠ³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡΡ Π² ΠΊΡ€ΠΎΠ»ΠΈΡ‡ΡŒΡŽ Π½ΠΎΡ€Ρƒ Termux:API

API ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ Π² этом словС для сСрдца ΠΊΠΎΠ΄Π΅Ρ€Π° слилось

Если Π½Π΅ Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°Ρ‚ΡŒ Ρ‚Π΅ΠΌΡƒ Termux:API, Ρ‚ΠΎ всС наши шаги ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ свСсти ΠΊ простому пСрСсказу ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π±Ρ€ΠΎΡˆΡŽΡ€Ρ‹ Ρ‚ΠΈΠΏΠ° «Π›ΠΈΠ½ΡƒΠΊΡ для Ρ‡Π°ΠΉΠ½ΠΈΠΊΠΎΠ²», ΠΊΠ°ΠΊ Π±Ρ‹Π»ΠΎ справСдливо ΠΏΠΎΠ΄ΠΌΠ΅Ρ‡Π΅Π½ΠΎ Π² коммСнтариях ΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠΉ части.

Для Π½Π°Ρ‡Π°Π»Π° установим Termux:API ΠΈΠ· Google Play Market’Π° (послС Π½Π΅ ΠΏΠΎΠΌΠ΅ΡˆΠ°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Termux):

Termux шаг Π·Π° шагом (Π§Π°ΡΡ‚ΡŒ 2)

Π”Π°Π»Π΅Π΅ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ API Π² консоли Termux’Π°:

updg # НС Π·Π°Π±Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΎ alias’ы
apt install termux-api

Для экспСримСнтов я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Android 5.1.1, для Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² Android 7 Π½ΡƒΠΆΠ½ΠΎ Β«Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒΒ» Termux: API, зайдя Π² Β β€˜ΠΠ°ΡΡ‚Ρ€ΠΎΠΉΠΊΠΈβ€™ > β€˜Π—Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Π΅ прилоТСния’, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π²Ρ‹Π·ΠΎΠ²Ρ‹ API, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ termux-battery-status, Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Π²ΠΈΡΠ°Ρ‚ΡŒ. (Π‘ΠΌ. wiki ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°)

Π’Π΅ΠΏΠ΅Ρ€ΡŒ стоит ΠΏΠΎΠ±Π»ΠΈΠΆΠ΅ познакомится с ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½Π½Ρ‹ΠΌΠΈ возмоТностями. Π‘Π°ΠΌΠΎΠ΅ свСТСС ΠΈ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ описаниС Termux:API ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π° wiki ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π― ΠΆΠ΅ ΠΏΠΎΡΡ‚Π°Ρ€Π°ΡŽΡΡŒ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ самоС наглядноС ΠΈ интСрСсноС, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π½Π°Π±ΠΈΡ‚ΡŒ Ρ€ΡƒΠΊΡƒ для ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² дальнСйшСм.

НСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Termux:API

  • termux-battery-status
    Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ состояниС Π±Π°Ρ‚Π°Ρ€Π΅ΠΈ
    Termux шаг Π·Π° шагом (Π§Π°ΡΡ‚ΡŒ 2)
  • termux-brightness
    УстанавливаСт ΡΡ€ΠΊΠΎΡΡ‚ΡŒ экрана ΠΎΡ‚ 0 Π΄ΠΎ 255
    Termux шаг Π·Π° шагом (Π§Π°ΡΡ‚ΡŒ 2)
  • termux-toast
    ΠŸΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅
    Termux шаг Π·Π° шагом (Π§Π°ΡΡ‚ΡŒ 2)
  • termux-torch
    Π’ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Ρ„ΠΎΠ½Π°Ρ€ΠΈΠΊ
    Termux шаг Π·Π° шагом (Π§Π°ΡΡ‚ΡŒ 2)
  • termux-wifi-scaninfo
    Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ послСднСм сканировании сСтСй Wi-Fi
    Termux шаг Π·Π° шагом (Π§Π°ΡΡ‚ΡŒ 2)

НСтрудно Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния ΡΠ²Π»ΡΡŽΡ‚ΡΡ строками, словарями, списками словарСй, Π² ΠΎΠ±Ρ‰Π΅ΠΌ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ прСкрасно Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Python, поэтому ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом ΠΌΡ‹ Π΅Π³ΠΎ установим.

Π¨Π°Π³ 5

Установим Python ΠΈ nano

Для установки Python’Π° пишСм Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅:

updg
apt install python
apt install python2

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ нас установлСн 2 ΠΈ 3 Python.

Π—Π° врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ ΡΡ‚Π°Ρ‚ΡŒΠ΅ΠΉ, я ΠΎΡ‚ΠΊΡ€Ρ‹Π» для сСбя Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ nano, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ приглянулся ΠΌΠ½Π΅ большС Ρ‡Π΅ΠΌ vim, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π΅Π³ΠΎ установим:

apt install nano

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠΌ ΠΏΡ€ΠΎΡ‰Π΅ Ρ‡Π΅ΠΌ vim’ΠΎΠΌ, ΠΈ nano ΠΈΠΌΠ΅Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ друТСствСнный интСрфСйс. На Android устройствС всС ΠΆΠ΅ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ vim.

HelloWorld Π½Π° Python Π² Termux

По Π±ΠΎΠ»ΡŒΡˆΠΎΠΌΡƒ счСту ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ ΠΈ Π±Π΅Π· этого ΠΏΡƒΠ½ΠΊΡ‚Π°, Π½ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Python Π² Termux ΠΈ Π½Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ HelloWorld, Π½Π° ΠΌΠΎΠΉ взгляд, ΠΌΠΎΠ²Π΅Ρ‚ΠΎΠ½.

Π― Π½Π΅ ΡΡ‚Π°Π²Π»ΡŽ своСй Ρ†Π΅Π»ΡŒΡŽ ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ Python’у, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π½Π΅ Π·Π½Π°ΡŽΡ‰ΠΈΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ просто ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ (ΠΈΠ»ΠΈ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π±Π»Π°Π³ΠΎ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚), Π° Π·Π½Π°ΡŽΡ‰ΠΈΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈ сами Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π½Π°Π²Π°ΡΡ‚ΡŒ. А я «ΠΏΠΎΠ΄ ΡˆΡƒΠΌΠΎΠΊ» Π΅Ρ‰Π΅ ΠΏΠΎΠΊΠ°ΠΆΡƒ способ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ тСкст Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅ Π±Π΅Π· Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°.

cat >hello-world.py     
# Если Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ источник (напоминаю cat 1.txt > 2.txt)
# Ρ‚ΠΎ cat Π±ΡƒΠ΄Π΅Ρ‚ Π±Ρ€Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· стандартного ΠΏΠΎΡ‚ΠΎΠΊΠ° Π²Π²ΠΎΠ΄Π°,
# ΠΏΡ€ΠΎΡ‰Π΅ говоря Π²Π²ΠΎΠ΄ΠΈΠΌΠΎΠ΅ с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹.

str = β€˜Hello, world!’ # присваиваСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ str Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ "Hello, world!"
print (str) # Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Π½Π° экран Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ str

# Ctrl + D Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ Π²Π²ΠΎΠ΄ ΠΈ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» (hello-world.py)

py hello-world.py # запускаСм Ρ„Π°ΠΉΠ» (py это alias ΠΎΡ‚ python)

Termux шаг Π·Π° шагом (Π§Π°ΡΡ‚ΡŒ 2)

Если Π² процСссС Π²Π²ΠΎΠ΄Π° Π²Ρ‹ Π½Π΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ»ΠΈ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈ ΡƒΠΆΠ΅ Π½Π°ΠΆΠ°Π»ΠΈ Enter, Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° строку Π²Ρ‹ΡˆΠ΅ Π½Π΅ получится, для этого Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚Π΅ Π²Π²ΠΎΠ΄ Π½Π°ΠΆΠ°Π² Ctrl + D (ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΏΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ Ctrl + Z) ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ всС с Π½Π°Ρ‡Π°Π»Π°. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ использовали β€˜>’ Ρ‚ΠΎ Ρ„Π°ΠΉΠ» Π±ΡƒΠ΄Π΅Ρ‚ пСрСписан ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Π½Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Π²ΠΎΠ΄Π°, Ссли Π²Ρ‹ Π½Π΅ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ Ρ‡Ρ‚ΠΎ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΊΠΎΠ΄ сразу Π±Π΅Π· ошибок.

Π¨Π°Π³ 6

Bash-скрипты

Bash-скрипты это Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ способ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠΌ. Π‘ΠΊΡ€ΠΈΠΏΡ‚ прСдставляСт ΠΈΠ· сСбя Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .sh (Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ) содСрТащий Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΡ‹ ΡƒΠΆΠ΅ ΠΈΠ·ΡƒΡ‡ΠΈΠ»ΠΈ. Π’ΠΎΡ‚ список Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΊΠΎΠΌΠ°Π½Π΄, всС Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Π½ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ это список для «Π²Π·Ρ€ΠΎΡΠ»ΠΎΠ³ΠΎ» Linux’а, Π° Π½Π΅ для Termux’а, Π° Π²ΠΎΡ‚ просто ΡˆΠΈΠΊΠ°Ρ€Π½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» ΠΏΠΎ bash-скриптам.

ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ скриптов ΠΌΠΎΠΆΠ½ΠΎ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ практичСски всС ΠΌΠΎΠ½ΠΎΡ‚ΠΎΠ½Π½Ρ‹Π΅ дСйствия. НапишСм ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ bash-скрипт выводящий Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· созданной ΠΈΠΌ ΠΆΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, я снова Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡΡŒ cat’ом, Π²Ρ‹ ΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, Π° особо ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΠ΅ сСбя ΠΏΠΎΡ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ echo.

cat >test.sh

export str="ΠŸΡ€ΠΈΠ²Π΅Ρ‚, Π₯Π°Π±Ρ€!"
# export создаСт ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ str
# ΠΈ присваиваСт Π΅ΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, Π₯Π°Π±Ρ€!"
# НС ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π΄ΠΎ ΠΈ послС β€˜=’

echo $str # Для обращСния ΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ ΠΏΠ΅Ρ€Π΅Π΄ Π½ΠΈΠΌΠΈ ставится β€˜$’

# Ctrl + D

# ./test.sh для запуска скрипта, Π½ΠΎ Ссли это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ сСйчас Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ошибка
# для избавлСния ΠΎΡ‚ ошибки Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» test.sh исполняСмым

chmod +x test.sh
# chmod измСняСт ΠΏΡ€Π°Π²Π° доступа (+ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ / - ΡƒΠ±Ρ€Π°Ρ‚ΡŒ)
# β€˜+x’ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» исполняСмым

./test.sh # ЗапускаСм Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ нашСго скрипта

Termux шаг Π·Π° шагом (Π§Π°ΡΡ‚ΡŒ 2)

Bash-скрипт с Termux:API

Π”Π°Π²Π°ΠΉΡ‚Π΅ напишСм ΡƒΠΆΠ΅ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‰Π΅Π΅ΡΡ ΠΎΡ‚ прСсловутых HelloWorld’ов, Π½ΠΎ ΡΡ‚ΠΎΠ»ΡŒ ΠΆΠ΅ бСсполСзноС. Наш скрипт Π±ΡƒΠ΄Π΅Ρ‚:

  1. Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ запрос API termux-battery-status
  2. ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ„Π°ΠΉΠ» test.txt
  3. Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π½Π° экран
  4. Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ Ρ€Π°Π½Π΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ hello-world.py
  5. ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄Π°Π½Π½Ρ‹Π΅ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π² Ρ„Π°ΠΉΠ» test.txt
  6. Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π½Π° экран
  7. ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°
  8. Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° экран содСрТимоС Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π°
  9. Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ сообщСниС с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π°

Π‘Π½Π°Ρ‡Π°Π»Π° создадим ΠΏΠ°ΠΏΠΊΡƒ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ скопируСм Ρ‚ΡƒΠ΄Π° hello-world.py ΠΊΠ°ΠΊ test.py, создадим Π² этой ΠΏΠ°ΠΏΠΊΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ test.sh ΠΈ test.txt:

mkdir bashscript

cat hello-world.py >> bashscript/test.py

cd bashscript/

touch test.sh test.txt # touch создаСт Ρ„Π°ΠΉΠ»Ρ‹

chmod +x test.sh

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π»ΡŽΠ±Ρ‹ΠΌ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ способом Π² Ρ„Π°ΠΉΠ» test.sh запишСм скрипт:

#!/bin/bash

# Π’ Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ скрипта принято ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ #! (называСтся шСбанг)
# послС ΠΈΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π½Π° шСлл для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ написан скрипт

clear # очистим ΠΎΠΊΠ½ΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

termux-battery-status > test.txt # ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ 1 ΠΈ 2 ΠΈΠ· Π½Π°ΠΌΠ΅Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π°

cat test.txt # ΠΏΡƒΠ½ΠΊΡ‚ 3

python test.py > test.txt # ΠΏΡƒΠ½ΠΊΡ‚ 4 ΠΈ 5

cat test.txt # ΠΏΡƒΠ½ΠΊΡ‚ 6

cat test.txt | termux-clipboard-set # ΠΏΡƒΠ½ΠΊΡ‚ 7
# | это ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€. пСрСносит Π΄Π°Π½Π½Ρ‹Π΅ с Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° Π½Π° Π²Ρ…ΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ

termux-clipboard-get # ΠΏΡƒΠ½ΠΊΡ‚ 8

termux-clipboard-get | termux-toast # ΠΏΡƒΠ½ΠΊΡ‚ 9

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π² ΠΏΠ°ΠΏΠΊΠ΅ bashscript пишСм ./test.sh наблюдаСм Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅ Π½Π° Android устройствС:

Termux шаг Π·Π° шагом (Π§Π°ΡΡ‚ΡŒ 2)

Π’ΠΎΡ‚ ΠΌΡ‹ ΠΈ написали Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ bash-скрипт. МоТно Ρ€Π°Π·Π±Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ Π² консоль ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ дСйствия (ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ echo), это ΠΎΡΡ‚Π°Π²Π»ΡŽ для Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ.

Π¨Π°Π³ 7

Π‘Π΄Π΅Π»Π°Π΅ΠΌ Ρ…ΠΎΡ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅

ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅

Π‘Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΡƒΠ΅ΠΌ Ρ‚Π΅Ρ…Π·Π°Π΄Π°Π½ΠΈΠ΅
ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ послС запуска ΠΏΠΎΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° ΡΠ»ΡƒΡ‡Π°ΠΉΠ½ΡƒΡŽ строку ΠΈΠ· Ρ„Π°ΠΉΠ»Π° ΠΈ ΠΎΠΏΠΎΠ²Π΅Ρ‰Π°Ρ‚ΡŒ ΠΎΠ± этом Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ сообщСниСм.

Π—Π° основу возьмСм bash-скрипт, ΡΠ»ΡƒΡ‡Π°ΠΉΠ½ΡƒΡŽ строку ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π±ΡƒΠ΄Π΅ΠΌ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Python’С. Боставим ΠΏΠ»Π°Π½ Ρ€Π°Π±ΠΎΡ‚Ρ‹ скрипта:

  1. Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ
  2. ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°
  3. ВывСсти Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ сообщСниС

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌΡΡ с названиями Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² прилоТСния:

  • ΠΏΠ°ΠΏΠΊΠ° rndstr Π² домашнСй Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ
    • source β€” Ρ„Π°ΠΉΠ» ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π±ΡƒΠ΄Π΅ΠΌ Π±Ρ€Π°Ρ‚ΡŒ строки
    • rndstr.py β€” ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выводящая Π² консоль ΡΠ»ΡƒΡ‡Π°ΠΉΠ½ΡƒΡŽ строку ΠΈΠ· Ρ„Π°ΠΉΠ»Π° source
    • rndstr.sh β€” Ρ„Π°ΠΉΠ» скрипта

Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ прилоТСния ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΠ²ΡˆΠΈΡΡŒ Π² Π½Π΅Π΅ создаСм Ρ‚Π°ΠΌ Ρ„Π°ΠΉΠ»Ρ‹.

ΠŸΠ΅Ρ€Π²Ρ‹Π΅ Π΄Π²Π° ΠΏΡƒΠ½ΠΊΡ‚Π° ΠΏΠ»Π°Π½Π° скрипта ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ΠΎΠΌ, Π² ΠΈΡ‚ΠΎΠ³Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Termux:API ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ:

#!/bin/bash

python ~/rndstr/rndstr.py | termux-clipboard-set # 1 ΠΈ 2 ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ ΠΏΠ»Π°Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹

termux-toast "OK" # 3 ΠΏΡƒΠ½ΠΊΡ‚. Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ сообщСниС "ОК"

Π’ Ρ„Π°ΠΉΠ» source Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ любой тСкст логичСски Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π½Π° строки, я Ρ€Π΅ΡˆΠΈΠ» ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π°Ρ„ΠΎΡ€ΠΈΠ·ΠΌΡ‹:

Листинг Ρ„Π°ΠΉΠ»Π° sourse

Π˜ΡΠΊΡ€Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π½Π΅ Π΅ΡΡ‚ΡŒ истина. Π›. Π›Π°Π²Π΅Π»ΡŒ
Π’Π΅Ρ€ΠΏΠΈ ΠΈ воздСрТивайся. Π­ΠΏΠΈΠΊΡ‚Π΅Ρ‚
Π‘Π»Π°Π³ΠΎΡ€ΠΎΠ΄Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ бСскорыстно. Π–. Π›Π°Π±Ρ€ΡŽΠΉΠ΅Ρ€
Π‘ΡƒΠ΄ΡŒ Π±Π»Π°Π³ΠΎΡ€Π°Π·ΡƒΠΌΠ½ΠΎ ΠΎΡ‚Π²Π°ΠΆΠ½Ρ‹ΠΌ. Π‘. Грасиан
Π”ΠΎΠ±Ρ€ΠΎΡ‚Π° Π»ΡƒΡ‡ΡˆΠ΅ красоты. Π“. Π“Π΅ΠΉΠ½Π΅
Для Π²Π΅Π»ΠΈΠΊΠΈΡ… Π΄Π΅Π» Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π΅ΡƒΡ‚ΠΎΠΌΠΈΠΌΠΎΠ΅ постоянство. Π€.Π’ΠΎΠ»ΡŒΡ‚Π΅Ρ€
Если Ρ‚Ρ‹ Ρ…ΠΎΡ‡Π΅ΡˆΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚Π΅Π±Π΅ всСгда ΡƒΠ³ΠΎΠΆΠ΄Π°Π»ΠΈ, прислуТивай сСбС сам. Π‘. Π€Ρ€Π°Π½ΠΊΠ»ΠΈΠ½
ЧрСзмСрная ΡΠΊΡ€ΠΎΠΌΠ½ΠΎΡΡ‚ΡŒ Π΅ΡΡ‚ΡŒ Π½Π΅ Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ΅, ΠΊΠ°ΠΊ скрытая Π³ΠΎΡ€Π΄ΠΎΡΡ‚ΡŒ. А. ШСньС
ΠžΡ‡Π΅Π½ΡŒ ΡƒΠΌΠ½Ρ‹ΠΌ людям Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ Π½Π΅ Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ, Ссли видят ΠΈΡ… смущСниС. Π€. ΠΠΈΡ†ΡˆΠ΅
Π‘Π΅Π΄Π½ΠΎΡΡ‚ΡŒ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° отсутствиС срСдств, Π° Π½Π΅ Π½Π° отсутствиС благородства. Π”. Π‘ΠΎΠΊΠΊΠ°Ρ‡Ρ‡ΠΎ
НуТно ΠΎΡΡ‚Π΅Ρ€Π΅Π³Π°Ρ‚ΡŒΡΡ довСдСния скромности Π΄ΠΎ стСпСни униТСния. А. Π‘Π°ΠΊΠΈΡ…Π°Π½ΠΎΠ²
ΠšΡ‚ΠΎ отказываСтся ΠΎΡ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ сСбС ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ. Π–. Π¨Π°Ρ€Π΄ΠΎΠ½
Когда Π½Π°ΠΌ платят Π·Π° Π±Π»Π°Π³ΠΎΡ€ΠΎΠ΄Π½Ρ‹ΠΉ поступок, Π΅Π³ΠΎ Ρƒ нас ΠΎΡ‚Π½ΠΈΠΌΠ°ΡŽΡ‚. Н. Π¨Π°ΠΌΡ„ΠΎΡ€
НС ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ вовсС - Π½Π΅ ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎ, Π½ΠΎ Π»ΠΈΡˆΠΈΡ‚ΡŒΡΡ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΠΈΠ΄Π½ΠΎ. Клавдий Π­Π»ΠΈΠ°Π½
Π›Π΅Π³Ρ‡Π΅ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ Ρ‚Π΅Ρ€ΠΏΠ΅Π»ΠΈΠ²ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½Π΅ Π΄Π°Π½ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ. Π“ΠΎΡ€Π°Ρ†ΠΈΠΉ
Π£ΡΡ‚Π°Π΅ΡˆΡŒ ΠΆΠ΄Π°Ρ‚ΡŒ, Π½ΠΎ насколько Ρ…ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ Π±Ρ‹, Ссли Π±Ρ‹ ΠΆΠ΄Π°Ρ‚ΡŒ стало Π½Π΅Ρ‡Π΅Π³ΠΎ. Π‘. Π¨ΠΎΡƒ
ВсС ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ воврСмя, Ссли люди ΡƒΠΌΠ΅ΡŽΡ‚ ΠΆΠ΄Π°Ρ‚ΡŒ. Π€. Π Π°Π±Π»Π΅
Π‘Π²ΠΎΠΈΠΌ Ρ‚Π΅Ρ€ΠΏΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ большСго, Ρ‡Π΅ΠΌ силой. Π­. Π‘Π΅Ρ€ΠΊ
Надо ΡƒΠΌΠ΅Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ Ρ‚ΠΎ, Ρ‡Π΅Π³ΠΎ нСльзя ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ. М. ΠœΠΎΠ½Ρ‚Π΅Π½ΡŒ
ΠšΡ‚ΠΎ Π² Π΄Π΅Π»Π΅ смСл, Ρ‚ΠΎΡ‚ слов Π½Π΅ ΡƒΡΡ‚Ρ€Π°ΡˆΠΈΡ‚ΡΡ. Π‘ΠΎΡ„ΠΎΠΊΠ»
Π― Π½Π΅ люблю ΡΡ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ, я люблю ΠΏΠΎΠ±Π΅ΠΆΠ΄Π°Ρ‚ΡŒ. Π‘. Π¨ΠΎΡƒ
Π—Π°Ρ‚Ρ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ ΠΈ ΠΏΡ€ΠΈΠΆΠ°Ρ‚Ρ‹ΠΉ ΠΊ стСнС ΠΊΠΎΡ‚ прСвращаСтся Π² Ρ‚ΠΈΠ³Ρ€Π°. М. БСрвантСс
Достойный Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ Π½Π΅ ΠΈΠ΄Π΅Ρ‚ ΠΏΠΎ слСдам Π΄Ρ€ΡƒΠ³ΠΈΡ… людСй. ΠšΠΎΠ½Ρ„ΡƒΡ†ΠΈΠΉ
Π’Π΅Π»ΠΈΠΊΠΈΠΉ ΡƒΠΌ проявит свою силу Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΡƒΠΌΠ΅Π½ΠΈΠΈ ΠΌΡ‹ΡΠ»ΠΈΡ‚ΡŒ, Π½ΠΎ ΠΈ Π² ΡƒΠΌΠ΅Π½ΠΈΠΈ ΠΆΠΈΡ‚ΡŒ. Π . ЭмСрсон
Π‘Π»Π°Π²Π° - Ρ‚ΠΎΠ²Π°Ρ€ Π½Π΅Π²Ρ‹Π³ΠΎΠ΄Π½Ρ‹ΠΉ. Π‘Ρ‚ΠΎΠΈΡ‚ Π΄ΠΎΡ€ΠΎΠ³ΠΎ, сохраняСтся ΠΏΠ»ΠΎΡ…ΠΎ. О. Π‘Π°Π»ΡŒΠ·Π°ΠΊ
Π‘Π΄Π΅Ρ€ΠΆΠ°Π½Π½ΠΎΡΡ‚ΡŒ ΠΈ ΡƒΠΌΠ΅ΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π² Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Π°Ρ… стоят большС краснорСчия. Π€. Бэкон
ΠšΡ‚ΠΎ ΠΌΠΎΠ»Ρ‡Π°Ρ‚ΡŒ Π½Π΅ ΡƒΠΌΠ΅Π΅Ρ‚, Ρ‚ΠΎΡ‚ ΠΈ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ, Π½Π΅ способСн. Π‘Π΅Π½Π΅ΠΊΠ° Младший
Π₯ΠΎΡ€ΠΎΡˆΠΈΠ΅ ΠΌΠ°Π½Π΅Ρ€Ρ‹ состоят ΠΈΠ· ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… ΠΆΠ΅Ρ€Ρ‚Π². Π€. ЧСстСрфилд
Π”ΠΎΠ±Ρ€Ρ‹ΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ Π½Π΅ Ρ‚ΠΎΡ‚, ΠΊΡ‚ΠΎ ΡƒΠΌΠ΅Π΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ Π΄ΠΎΠ±Ρ€ΠΎ, Π° Ρ‚ΠΎΡ‚, ΠΊΡ‚ΠΎ Π½Π΅ ΡƒΠΌΠ΅Π΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ Π·Π»Π°. Π’. ΠšΠ»ΡŽΡ‡Π΅Π²ΡΠΊΠΈΠΉ
НС произноситС бСсповоротных суТдСний! Августин
НичСго слишком! Π‘ΠΎΠ»ΠΎΠ½

Нам ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡŽΡ‰ΡƒΡŽ ΡΠ»ΡƒΡ‡Π°ΠΉΠ½ΡƒΡŽ строку ΠΈΠ· Ρ„Π°ΠΉΠ»Π° source.
РаспишСм Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

  1. ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» source
  2. Π‘Ρ‡ΠΈΡ‚Π°Π΅ΠΌ количСство строк Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅
  3. Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» (Π½Π΅Ρ‡Π΅Π³ΠΎ Π΅Π³ΠΎ лишнСС врСмя ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ)
  4. Π“Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ случайноС Ρ†Π΅Π»ΠΎΠ΅ число Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… количСства строк Ρ„Π°ΠΉΠ»Π° source
  5. ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» source
  6. Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ строку ΠΏΠΎΠ΄ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ сгСнСрированного числа
  7. Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ»

Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π½Π° Python (я ΠΏΠΈΡˆΡƒ ΠΏΠΎΠ΄ Python 3.7):

import random Β #  ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ случайных чисСл
import os Β #  для получСния ΠΏΡƒΡ‚ΠΈ

path = os.path.abspath(__file__)  # Β ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ прямой ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ Ρ„Π°ΠΉΠ»Π° rndstr.py
path = os.path.dirname(path) Β #  ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅ΠΌ Π² ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ
path = path Β + '/source'  # Β ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅ΠΌ Π² ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ Ρ„Π°ΠΉΠ»Π° source

f = open(path) Β #  ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ»
i = 0 Β #  обнуляСм счСтчик
for str in f: i+=1 Β #  считаСм строки Ρ„Π°ΠΉΠ»Π°
f.close Β #  Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ»

j = int(round(i * random.random())) Β #  Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ Ρ†Π΅Π»ΠΎΠ΅ случайноС число ΠΎΡ‚ 0 Π΄ΠΎ i

f = open(path) Β #  ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ»
i = 0 Β #  обнуляСм счСтчик
for str in f: Β #  ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Π΅ΠΌ строки ΠΈΠ· Ρ„Π°ΠΉΠ»Π°
 Β Β Β if i == j: Β #  Ссли счСтчик строк Ρ€Π°Π²Π΅Π½ сгСнСрированному числу
 Β Β Β Β Β Β Β print (str, end='') Β #  Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ строку Π±Π΅Π· ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° Π½ΠΎΠ²ΡƒΡŽ
 Β Β Β Β Β Β Β break  # Β Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΠΌ ΠΈΠ· Ρ†ΠΈΠΊΠ»Π°
 Β Β Β i+=1 Β #  ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅ΠΌ счСтчик Π½Π° 1
f.close Β #  Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ»

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ»Ρ‹ созданы ΠΈ записаны, Π½ΡƒΠΆΠ½ΠΎ Π΄Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²Π° Π½Π° исполнСниС Ρ„Π°ΠΉΠ»Ρƒ rndstr.sh, ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ alias для быстрого запуска.

alias rnst="~/rndstr/rndstr.sh"

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ввСдя Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅ rnst ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° случайный Π°Ρ„ΠΎΡ€ΠΈΠ·ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² пСрСпискС.

Π’ΠΎΡ‚ ΠΌΡ‹ ΠΈ написали Ρ…ΠΎΡ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅. ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅.

P.s.

Π― Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎ Π² послСднСм шагС Π½Π΅ стал ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Ρ‹ ΠΈ Π½Π΅ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π» ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ дСйствия, расписав Ρ‚ΠΎΠ»ΡŒΠΊΠΎ содСрТимоС Ρ„Π°ΠΉΠ»ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρƒ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ Π±Ρ‹Π»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ.

На этом «Termux шаг Π·Π° шагом», Π΄ΡƒΠΌΠ°ΡŽ, стоит Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅ это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ самыС ΠΏΠ΅Ρ€Π²Ρ‹Π΅ шаги, Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ Π²ΠΏΠ΅Ρ€Π΅Π΄ сами.

Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ я ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π» ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π² этом Ρ†ΠΈΠΊΠ»Π΅ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ nmap, sqlmap, Π½ΠΎ ΠΈ Π±Π΅Π· мСня ΡƒΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ статСй Π½Π° эту Ρ‚Π΅ΠΌΡƒ. Если Π΅ΡΡ‚ΡŒ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ Ρ‡Ρ‚ΠΎΠ±Ρ‹ я ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠ» Ρ†ΠΈΠΊΠ» «Termux шаг Π·Π° шагом», Ρ‚ΠΎ Π½ΠΈΠΆΠ΅ Π΅ΡΡ‚ΡŒ опрос Π° Π² коммСнтариях ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΎ Ρ‡Π΅ΠΌ Π΅Ρ‰Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ.

Волько зарСгистрированныС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΡ‡Π°ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² опросС. Π’ΠΎΠΉΠ΄ΠΈΡ‚Π΅, поТалуйста.

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Β«Termux шаг Π·Π° шагом»?

  • Π”Π°

  • НСт

ΠŸΡ€ΠΎΠ³ΠΎΠ»ΠΎΡΠΎΠ²Π°Π»ΠΈ 2 ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π’ΠΎΠ·Π΄Π΅Ρ€ΠΆΠ°Π²ΡˆΠΈΡ…ΡΡ Π½Π΅Ρ‚.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com