Termux laasaga ma lea laasaga (Vaega 2)

В vaega mulimuli Na matou masani i tulafono autu a Termux, faʻatulagaina se fesoʻotaʻiga SSH ma se PC, aʻoaʻo pe faʻafefea ona fai igoa ma faʻapipiʻi le tele o mea aoga. O le taimi lenei e tatau ona matou agai i luma, matou te faatasi ma oe:

  • aoao e uiga i Termux:API
  • Sei o tatou faʻapipiʻi le Python ma le nano, ma tusi foi "Talofa, lalolagi!" i le Python
  • a'oa'o e uiga i le bash scripts ma tusi se tala e fa'aaoga ai Termux:API
  • Se'i o tatou tusia se polokalame faigofie e fa'aaoga ai le bash script, Termux: API ma le Python

Talu ai ua tatou malamalama nei i mea o loʻo faia i totonu o le tulafono, mai le isi laasaga o le a ou le faʻamatalaina gaioiga taʻitasi i se auiliiliga, ae pe a iai ni faʻafitauli, o le a ou faʻamatalaina.

E masani ona ou faʻaogaina igoa, o lea o faʻapuupuuga o loʻo faʻaaogaina i lenei vaega o loʻo faʻaalia iinei:

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

Ua saunia le fuafuaga, e mafai ona tatou amata! Ma o le mea moni, aua nei galo e uiga i le "magic Tab" (Silasila i le Vaega 1).

laa 4

Maulu i lalo ole Termux:API Rabbit Hole

API, o le a le tele o lenei upu mo le fatu coder ua tuufaatasia

Afai tatou te le paʻi atu i le autu o Termux: API, ona mafai lea ona faʻaititia a tatou laasaga uma i se toe faʻamatalaina faigofie o nisi o polosiua e pei o le "Linux for Dummies," e pei ona saʻo ona matauina i faʻamatalaga i le vaega muamua.

Muamua, tatou faʻapipiʻi Termux: API mai le Google Play Market (mulimuli ane e le afaina le toe amata Termux):

Termux laasaga ma lea laasaga (Vaega 2)

Le isi e manaʻomia le faʻapipiʻiina o le afifi API i le Termux console:

updg # Не забываем про alias’ы
apt install termux-api

Mo faʻataʻitaʻiga o loʻo ou faʻaogaina le Android 5.1.1, mo tagata e ona le Android 7 e te manaʻomia le 'puipuia' le Termux: API e ala i le alu i le Faʻatonu> Puipuia Apps, a leai API valaau pei o. termux-battery-status, o le a malulu. (Cm. poloketi wiki)

O le taimi nei e vaʻavaʻai totoʻa ai i gafatia maua. Ole fa'amatalaga lata mai ma fa'amatalaga auiliili ole Termux:API e mafai ona maua ile poloketi wiki. O le a ou taumafai e filifili le mea e sili ona vaʻaia ma manaia, lea o le a mafai ai ona ou faʻaleleia atili i galuega tutoʻatasi i le lumanaʻi.

O nisi fa'ata'ita'iga o Termux:API

  • termux-batery-tulaga
    Toe faafoi le tulaga o le maa
    Termux laasaga ma lea laasaga (Vaega 2)
  • termux-malamalama
    Seti le susulu o le lau mai le 0 i le 255
    Termux laasaga ma lea laasaga (Vaega 2)
  • termux-toast
    Fa'aalia se fa'aaliga fa'aalia le tumau
    Termux laasaga ma lea laasaga (Vaega 2)
  • termux-moli
    E aofia ai moliuila
    Termux laasaga ma lea laasaga (Vaega 2)
  • termux-wifi-scaninfo
    Fa'afo'i fa'amatalaga e uiga i le su'ega mulimuli o feso'ota'iga Wi-Fi
    Termux laasaga ma lea laasaga (Vaega 2)

E faigofie ona iloa o le toe foʻi o tau o manoa, lomifefiloi, lisi o lomifefiloi, faʻamautu faʻamaumauga e galue lelei le Python, o le isi laʻasaga o le setiina.

laa 5

Faʻapipiʻi le Python ma le nano

Ina ia faʻapipiʻi le Python, tusi i totonu o le laina:

updg
apt install python
apt install python2

O lea ua matou faʻapipiʻiina le Python 2 ma le 3.

A o ou galue i lenei tusiga, na ou mauaina se isi tusitala tusitusiga, nano, lea ou te fiafia i ai nai lo vim, seʻi o tatou faʻapipiʻi:

apt install nano

E faigofie ona fa'aoga nai lo le vim, ma o le nano e sili atu ona fa'aoga fa'aoga. I luga o se masini Android, vim e sili atu ona faigofie.

HelloWorld i le Python i Termux

I le lautele, e mafai ona faia e aunoa ma lenei tulaga, ae o le faʻapipiʻiina o le Python i Termux ma le le tusia o HelloWorld, i loʻu manatu, o uiga leaga.

O laʻu sini e le o le aʻoaʻoina o se tasi o le Python, o lea e mafai ai e i latou e le iloa ona kopiina le code (pe amata ona aʻoaʻoina i latou lava, o le mea e lelei ai o loʻo lava tusitusiga), ma oi latou e iloa e mafai ona vaneina se mea i latou lava. Ma i luga o le filemu, o le a ou faʻaali atu foi ia te oe se auala e ulufale ai i tusitusiga i totonu o le laina e aunoa ma se faatonu.

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 laasaga ma lea laasaga (Vaega 2)

Afai i le faagasologa o le faʻaogaina e te leʻi matauina se mea sese ma ua uma ona oomi le Ulufale, ona le mafai lea ona e alu i le laina o loʻo i luga; e faia lenei mea, faʻauma le ulufale i le oomi Ctrl + D (e mafai foi ona e faʻalavelave Ctrl + Z) ma toe fai mea uma mai le amataga. Talu ai na matou faʻaaogaina '>' o le faila o le a toe tusia atoa. Mo lenei mafuaʻaga, ou te le fautuaina le faʻaogaina o lenei auala faʻaoga seivagana ua e mautinoa o le a e tusia le code i le taimi lava e aunoa ma ni mea sese.

laa 6

Tusitusi Bash

Bash scripts o se auala sili lea e fa'autometi ai lau galuega fa'amau. O le tusitusiga o se faila ma le faʻaopoopoga .sh (o le faʻaopoopoga e filifili) o loʻo i ai se seti o faʻatonuga faʻatonu, o nisi o ia mea ua uma ona matou suʻesuʻeina. O iinei lisi o le tele o poloaiga, e tatau ona aoga mea uma, ae faamolemole ia matau o se lisi lenei mo Linux "matua", ae le mo Termux, ae naʻo Mea lelei i tusitusiga bash.

I le faʻaaogaina o tusitusiga, e mafai ona e faʻaogaina toetoe lava o gaioiga monotonous uma. Sei o tatou tusia se tusitusiga faigofie bash e maua ai le tau mai le fesuiaiga na ia faia, o le a ou toe faʻaaogaina pusi, e mafai ona e faʻaogaina se faʻatonu tusitusiga masani, ma oi latou e manaʻo faapitoa e toleni i latou lava e mafai ona faʻaogaina 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 laasaga ma lea laasaga (Vaega 2)

Bash script ma Termux:API

Sei o tatou tusia se mea e ese mai le taʻutaʻua HelloWorlds, ae pei lava o le leai o se aoga. O la matou tusiga o le a:

  1. fai termux-batery-status API talosaga
  2. fa'asaoina fa'amaumauga maua ile faila test.txt
  3. fa'aali fa'amatalaga mai se faila ile lau
  4. fa'atino le polokalame hello-world.py na tusia muamua
  5. Tusi fa'amaumauga na maua mai le polokalame ile faila test.txt
  6. fa'aali fa'amatalaga mai se faila ile lau
  7. fa'aliliuina fa'amatalaga mai se faila ile laupapa kilipa
  8. fa'aali mea o lo'o i totonu o le laupapa kilipa
  9. fa'aali atu se fe'au fa'aalia i luga o fa'amatalaga mai le laupapa kilipa

Muamua, tatou faia se faila mo galuega ma kopi hello-world.py iina e pei o test.py, fai faila test.sh ma test.txt i totonu o lenei pusa:

mkdir bashscript

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

cd bashscript/

touch test.sh test.txt # touch создает файлы

chmod +x test.sh

Ia, i soʻo se auala faigofie, tusi le tusitusiga i le faila 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

O lea ua i totonu o le faila bashscript matou te tusia ./test.sh Matou te vaʻai i le laina i luga o se masini Android:

Termux laasaga ma lea laasaga (Vaega 2)

O lea na matou tusia ai le bash script na fuafuaina. E mafai ona e faʻafefeina e ala i le tuʻuina atu o faʻamatalaga e uiga i le faʻatinoina o gaioiga taʻitasi i le faʻamafanafanaga (faʻaaogaina le echo), o le a ou tuʻuina lenei mea mo le au faitau.

laa 7

Tatou faia se mea aoga

Fa'atatau ile aoga

Se'i o tatou fa'atulagaina aiaiga o fa'amatalaga
A maeʻa le faʻalauiloaina, e tatau i le talosaga ona tuʻuina se laina faʻafuaseʻi mai se faila i luga o le laupapa kilipa ma logo e uiga i lenei mea i se feʻau faʻaalia.

Se'i o tatou ave se tala bash e fai ma faavae ma aumai se laina fa'afuase'i mai se faila e fa'aaoga ai le Python subroutine. Tatou fai se fuafuaga mo le tala:

  1. Fa'ata'ita'i so'o masani
  2. Fa'asolo atu le fa'ai'uga o le fa'atonuga i le laupapa kilipa
  3. Fa'aali atu se fe'au pop-up

Sei o tatou filifili i igoa o le lisi ma faila talosaga:

  • rndstr faila i le lisi o fale
    • puna - o le faila lea o le a matou ave ai laina
    • rndstr.py - ose fa'asologa e lolomi se laina fa'afuase'i mai le faila fa'apogai i le fa'amafanafanaga
    • rndstr.sh - faila faila

Matou te fatuina le tusi talosaga ma agai i totonu ma fai faila iina.

O vaega muamua e lua o le fuafuaga faʻasologa e mafai ona tuʻufaʻatasia e se paipa, o se taunuuga, faʻaaoga Termux: API tatou te maua:

#!/bin/bash

python ~/rndstr/rndstr.py | termux-clipboard-set # 1 и 2 пункты плана работы

termux-toast "OK" # 3 пункт. Выводим всплывающее сообщение "ОК"

I le faila faila e mafai ona e tuʻuina soʻo se tusitusiga e vaevaeina lelei i laina, na ou filifili e tuʻu aphorisms:

Lisi faila puna

Искренность не есть истина. Л. Лавель
Терпи и воздерживайся. Эпиктет
Благородно только то, что бескорыстно. Ж. Лабрюйер
Будь благоразумно отважным. Б. Грасиан
Доброта лучше красоты. Г. Гейне
Для великих дел необходимо неутомимое постоянство. Ф.Вольтер
Если ты хочешь, чтобы тебе всегда угождали, прислуживай себе сам. Б. Франклин
Чрезмерная скромность есть не что иное, как скрытая гордость. А. Шенье
Очень умным людям начинают не доверять, если видят их смущение. Ф. Ницше
Бедность указывает на отсутствие средств, а не на отсутствие благородства. Д. Боккаччо
Нужно остерегаться доведения скромности до степени унижения. А. Бакиханов
Кто отказывается от многого, может многое себе позволить. Ж. Шардон
Когда нам платят за благородный поступок, его у нас отнимают. Н. Шамфор
Не получить вовсе - не страшно, но лишиться полученного обидно. Клавдий Элиан
Легче переносить терпеливо то, что нам не дано исправить. Гораций
Устаешь ждать, но насколько хуже было бы, если бы ждать стало нечего. Б. Шоу
Все приходит вовремя, если люди умеют ждать. Ф. Рабле
Своим терпением мы можем достичь большего, чем силой. Э. Берк
Надо уметь переносить то, чего нельзя избежать. М. Монтень
Кто в деле смел, тот слов не устрашится. Софокл
Я не люблю сражаться, я люблю побеждать. Б. Шоу
Затравленный и прижатый к стене кот превращается в тигра. М. Сервантес
Достойный человек не идет по следам других людей. Конфуций
Великий ум проявит свою силу не только в умении мыслить, но и в умении жить. Р. Эмерсон
Слава - товар невыгодный. Стоит дорого, сохраняется плохо. О. Бальзак
Сдержанность и уместность в разговорах стоят больше красноречия. Ф. Бэкон
Кто молчать не умеет, тот и говорить, не способен. Сенека Младший
Хорошие манеры состоят из маленьких жертв. Ф. Честерфилд
Добрый человек не тот, кто умеет делать добро, а тот, кто не умеет делать зла. В. Ключевский
Не произносите бесповоротных суждений! Августин
Ничего слишком! Солон

Pau lava le mea e tatau ona tatou faia o le fatuina o se subroutine e aveese mai ai se manoa faʻafuaseʻi mai le faila faila.
Sei o tatou faʻamatalaina le algorithm o le subroutine:

  1. Tatala le faila faila
  2. Faitauina le numera o laina i se faila tatala
  3. Tapuni le faila (leai se mea e tatala ai mo se taimi umi)
  4. Fausia se numera fa'afuase'i i totonu ole numera o laina ile faila faila
  5. Tatala le faila faila
  6. Matou te faʻaalia se laina i lalo o le numera o le numera na faia
  7. Tapuni le faila

Sei o tatou faʻatinoina le algorithm i le Python (Ou te tusia i lalo ole 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  #  закрываем файл

A uma ona fai faila ma tusia, e tatau ona e tuʻuina atu aia tatau i le faila rndstr.sh, ma fai se igoa fa'aigoa mo le vave fa'alauiloa.

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

I le taimi nei e ala i le ulufale atu i le terminal rnst o le a matou maua se aphorism i luga o le laupapa kilipa, lea, mo se faataitaiga, e mafai ona faaaoga i fetusiaiga.

O lea na matou tusia ai se mea aoga. Fa'atatau ile aoga.

Ps

I le laasaga mulimuli, ou te leʻi tuʻuina atu faʻamalama ma e leʻi auʻiliʻili auiliili nisi o gaioiga, faʻamatala naʻo mea o loʻo i totonu o faila ina ia maua ai e le au faitau le avanoa e galulue ai na o latou.

Ou te manatu e aoga le faʻamaeʻaina o lenei "Termux laasaga ma lea laasaga". Ioe, o laasaga muamua ia, ae o lea e mafai ona e agai i luma na o oe.

I le taimi muamua, na ou fuafua e faʻaalia i lenei faasologa pe faʻapefea ona faʻaogaina le nmap, sqlmap, ae e tusa lava pe leai aʻu o loʻo i ai le tele o tala i lenei autu. Afai e te manaʻo ou te faʻaauauina le faasologa o le "Termux step by step", ona i ai lea o se suʻesuʻega i lalo ma i faʻamatalaga e mafai ona e fautua mai ai se isi mea e tusi e uiga i ai.

Na'o tagata fa'aigoaina e mafai ona auai i le su'esu'ega. Saini ese j, faʻamolemole.

Fa'aauau le "Termux laasaga ma lea laasaga"?

  • lea

  • leai

2 tagata fa'aoga na palota. E leai ni taofi.

puna: www.habr.com

Faaopoopo i ai se faamatalaga