Termux ceum air cheum (Pàirt 2)

В pàirt mu dheireadh fhuair sinn eòlas air na h-òrdughan bunaiteach aig Termux, stèidhich sinn ceangal SSH ri PC, dh'ionnsaich sinn mar a chruthaicheas sinn alias agus chuir sinn a-steach grunn ghoireasan feumail. An turas seo feumaidh sinn ceum nas fhaide air adhart, tha sinn còmhla riut:

  • Ionnsaich mu Termux: API
  • stàlaich Python agus nano, agus sgrìobh "Hello, world!" ann am Python
  • ionnsaich mu sgriobtaichean bash agus sgrìobh sgriobt a’ cleachdadh Termux:API
  • a’ cleachdadh sgriobt bash, Termux:API agus Python sgrìobhaidh sinn prògram sìmplidh

Leis gu bheil sinn a-nis a ’tuigsinn dè a bhios na h-òrdughan cuir a-steach a’ dèanamh, an uairsin bhon ath cheum cha bhith mi a ’toirt cunntas cho mionaideach air gach gnìomh, ach far am faodadh duilgheadasan a bhith ann, mìnichidh mi gu cinnteach.

Bidh mi a’ cleachdadh iomadh ailias, agus mar sin tha na giorrachaidhean a thathar a’ cleachdadh sa phàirt seo air an sealltainn an seo:

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

Tha am plana deiseil, faodaidh tu tòiseachadh! Agus gu dearbh, na dìochuimhnich mu na "magic Tab" (Faic Pàirt 1).

ceum 4

Dàibheadh ​​​​Sìos an Termux: API Rabbit Hole

API cia mheud a tha air aonachadh anns an fhacal seo airson cridhe a’ chòdadair

Mura suathadh sinn air a’ chuspair Termux: API, dh’ fhaodadh na ceumannan againn uile a bhith air an lughdachadh gu ath-aithris sìmplidh air leabhran mar “Linux for Dummies”, mar a chaidh a chomharrachadh gu ceart anns na beachdan sa chiad phàirt.

An toiseach, stàlaich Termux:API bho Google Play Market (chan eil e air a ghoirteachadh Termux ath-thòiseachadh às deidh sin):

Termux ceum air cheum (Pàirt 2)

An ath rud, feumaidh sinn am pasgan API a stàladh anns a’ chonsail Termux:

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

Airson deuchainneachd tha mi a’ cleachdadh Android 5.1.1, airson Android 7 feumaidh luchd-seilbh “dìon” Termux: API le bhith a’ dol gu ‘Settings’> ‘Protected Apps’ air neo bidh API a’ gairm mar termux-battery-status, crochaidh. (Cm. wiki pròiseact)

A-nis is fhiach sùil nas mionaidiche a thoirt air na cothroman a chaidh fhaighinn. Gheibhear an tuairisgeul as ùire agus as mionaidiche de Termux:API aig wiki pròiseact. Feuchaidh mi ris an fheadhainn as lèirsinneach agus inntinneach a thaghadh, a leigeas leam mo làmh a lìonadh airson obair neo-eisimeileach san àm ri teachd.

Cuid de Termux: eisimpleirean API

  • termux-bataraidh-inbhe
    A 'tilleadh staid a' bhataraidh
    Termux ceum air cheum (Pàirt 2)
  • termux-soilleireachd
    Suidhich soilleireachd an sgrion bho 0 gu 255
    Termux ceum air cheum (Pàirt 2)
  • teirmux-toast
    A’ sealltainn fios toast sealach
    Termux ceum air cheum (Pàirt 2)
  • teirmux-lòchran
    A ’toirt a-steach flashlight
    Termux ceum air cheum (Pàirt 2)
  • teirmux-wifi-scaninfo
    A’ tilleadh fiosrachadh mun scan mu dheireadh de lìonraidhean Wi-Fi
    Termux ceum air cheum (Pàirt 2)

Tha e furasta fhaicinn gur e sreangan, faclairean, liostaichean fhaclairean, san fharsaingeachd, seòrsaichean dàta a tha Python ag obair gu math leotha, agus mar sin is e an ath cheum a stèidheachadh.

ceum 5

Stàlaich Python agus nano

Gus Python a stàladh, sgrìobh anns a 'chrìoch:

updg
apt install python
apt install python2

Tha 2 agus 3 Python againn a-nis air an stàladh.

Fhad ‘s a bha mi ag obair air an artaigil, lorg mi deasaiche teacsa nano eile a bu toil leam nas motha na vim, leig dhuinn a stàladh:

apt install nano

Tha e nas fhasa a chleachdadh na vim, agus tha eadar-aghaidh nas fhasa a chleachdadh aig nano. Air inneal Android, tha vim fhathast nas goireasaiche.

HelloWorld ann am Python aig Termux

Gu h-iomlan, bha e comasach a dhèanamh às aonais an rud seo, ach tha a bhith a’ cur Python ann an Termux agus gun a bhith a’ sgrìobhadh HelloWorld, nam bheachd-sa, na dhroch mhodhan.

Chan eil mi a 'suidheachadh amas dhomh fhìn a bhith a' teagasg Python do dhuine sam bith, agus mar sin faodaidh an fheadhainn aig nach eil fios dìreach an còd a chopaigeadh (no tòiseachadh air ionnsachadh leotha fhèin, oir tha litreachas gu leòr ann), agus faodaidh an fheadhainn aig a bheil fios rudeigin a dhèanamh iad fhèin. Agus bidh mi “fo chumadh” fhathast a’ sealltainn dòigh air teacsa a chuir a-steach don cheann-uidhe gun neach-deasachaidh.

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 ceum air cheum (Pàirt 2)

Mura do mhothaich thu mearachd rè a’ phròiseas cuir a-steach agus gun do bhrùth thu Enter mu thràth, cha bhith e comasach dhut a dhol chun loidhne gu h-àrd, gus seo a dhèanamh, cuir crìoch air an in-chur le bhith a’ putadh Ctrl + D (mar as trice faodaidh tu stad a chuir air Ctrl + Z) agus a h-uile càil ath-aithris bhon toiseach. Leis gun do chleachd sinn '>' an uairsin thèid am faidhle ath-sgrìobhadh gu tur. Air an adhbhar seo, chan eil mi a’ moladh an dòigh cuir a-steach seo a chleachdadh mura h-eil thu cinnteach gun sgrìobh thu an còd sa bhad gun mhearachdan.

ceum 6

Sgriobtaichean Bash

Tha sgriobtaichean Bash nan deagh dhòigh air an obair crìochnachaidh agad a dhèanamh fèin-ghluasadach. Tha an sgriobt na fhaidhle leis an leudachadh .sh (tha an leudachadh roghainneil) anns a bheil seata de dh’ àitheantan crìochnachaidh, cuid dhiubh a rinn sinn sgrùdadh mu thràth. Seo liosta de na h-òrdughan as motha, bu chòir a h-uile càil obrachadh, ach thoir an aire gur e seo liosta airson Linux “inbheach”, chan e Termux, ach dìreach stuth sgoinneil air sgriobtaichean bash.

Le cuideachadh bho sgriobtaichean, faodaidh tu cha mhòr a h-uile gnìomh monotonous a dhèanamh fèin-ghluasadach. Sgrìobh sinn an sgriobt bash as sìmplidh a sheallas an luach bhon chaochladair a chruthaich e, cleachdaidh mi cat a-rithist, faodaidh tu deasaiche teacsa àbhaisteach a chleachdadh, agus faodaidh an fheadhainn a tha gu sònraichte airson iad fhèin a thrèanadh mac-talla a chleachdadh.

cat >test.sh

export str="Привет, Хабр!"
# export создает переменную str
# и присваивает ей значение "Привет, Хабр!"
# Не ставьте пробелы до и после ‘=’

echo $str # Для обращения к переменным перед ними ставится ‘$’

# Ctrl + D

# ./test.sh для запуска скрипта, но если это сделать сейчас то будет ошибка
# для избавления от ошибки нужно сделать файл test.sh исполняемым

chmod +x test.sh
# chmod изменяет права доступа (+ добавить / - убрать)
# ‘+x’ означает что мы делаем файл исполняемым

./test.sh # Запускаем выполнение нашего скрипта

Termux ceum air cheum (Pàirt 2)

Sgriobt Bash le Termux: API

Sgrìobhamaid rudeigin eadar-dhealaichte bho na HelloWorlds ainmeil, ach a cheart cho gun fheum. Bidh an sgriobt againn:

  1. cuir an gnìomh an t-iarrtas termux-battery-status API
  2. sàbhail an dàta a fhuaireadh dhan fhaidhle test.txt
  3. clò-bhuail dàta bho fhaidhle chun sgrion
  4. cuir an gnìomh am prògram hello-world.py a chaidh a sgrìobhadh roimhe
  5. sgrìobh an dàta a fhuaireadh bhon phrògram chun an fhaidhle test.txt
  6. clò-bhuail dàta bho fhaidhle chun sgrion
  7. gluais dàta bho fhaidhle gu clipboard
  8. taisbeanadh susbaint a’ bhòrd bhidio
  9. seall teachdaireachd pop-up le dàta bhon bhòrd bhidio

An toiseach, cruthaich pasgan airson obair agus dèan lethbhreac hello-world.py an sin mar test.py, cruthaich faidhlichean test.sh agus test.txt sa phasgan seo:

mkdir bashscript

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

cd bashscript/

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

chmod +x test.sh

A-nis, ann an dòigh iomchaidh sam bith, sgrìobh an sgriobt chun an fhaidhle 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

A-nis, le bhith sa phasgan bashscript, bidh sinn a’ sgrìobhadh ./test.sh chì sinn anns a’ chrìoch air an inneal Android:

Termux ceum air cheum (Pàirt 2)

Mar sin sgrìobh sinn an sgriobt bash dealbhaichte. Faodaidh tu a lagachadh leis an toradh gu consol fiosrachaidh mu choileanadh gach gnìomh (a ’cleachdadh mac-talla), fàgaidh mi seo airson an luchd-leughaidh.

ceum 7

Dèanamaid rudeigin feumail

An ìre mhath feumail

Leig leinn na teirmean iomraidh a dhealbhadh
Às deidh a chuir air bhog, bu chòir don tagradh loidhne air thuaiream a chuir bhon fhaidhle air a ’bhòrd bhidio agus fios a chuir mu dheidhinn le teachdaireachd pop-up.

Gabhaidh sinn sgriobt bash mar bhunait, bheir sinn a-mach loidhne air thuaiream bho fhaidhle a’ cleachdadh subroutine Python. Dèanamaid plana obrach sgriobt:

  1. Ruith subroutine
  2. Cuir a-mach toradh an subroutine chun a’ bhòrd bhidio
  3. Seall teachdaireachd popup

Mìnichidh sinn ainmean an eòlaire agus na faidhlichean tagraidh:

  • pasgan rndstr san eòlaire dachaigh
    • tùs - am faidhle às an toir sinn loidhnichean
    • rndstr.py - fo-riaghailt a sheallas loidhne air thuaiream bhon fhaidhle stòr chun consol
    • rndstr.sh - faidhle sgriobt

Cruthaich eòlaire tagraidh agus gluais thuige agus cruthaich faidhlichean an sin.

Faodar a’ chiad dà phuing den phlana sgriobta a chur còmhla le loidhne-phìoban, mar thoradh air an sin, a’ cleachdadh Termux: API a gheibh sinn:

#!/bin/bash

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

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

Anns an fhaidhle stòr, faodaidh tu teacsa sam bith a roinn ann an loidhnichean gu loidsigeach, chuir mi romhpa aphorisms a chuir:

Liosta faidhle stòr

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

Feumaidh sinn dìreach subroutine a chruthachadh a tharraing sreang air thuaiream bhon fhaidhle stòr.
Sgrìobh sinn algorithm an fho-riaghailt:

  1. Faidhle stòr fosgailte
  2. A’ cunntadh àireamh nan loidhnichean ann am faidhle fosgailte
  3. Dùin am faidhle (chan eil dad ri chumail fosgailte airson ùine a bharrachd)
  4. Bidh sinn a’ gineadh iomlanachd air thuaiream taobh a-staigh na h-àireimh loidhnichean den fhaidhle stòr
  5. Faidhle stòr fosgailte
  6. Bidh sinn a 'toirt a-mach loidhne fo àireamh an àireamh a chaidh a chruthachadh
  7. A 'dùnadh an fhaidhle

Bidh sinn a’ buileachadh an algairim ann am Python (bidh mi a’ sgrìobhadh fo 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  #  закрываем файл

Às deidh na faidhlichean a bhith air an cruthachadh agus air an sgrìobhadh, feumaidh tu ceadan cur an gnìomh an fhaidhle a thoirt seachad rndstr.sh, agus cruthaich alias airson a chuir air bhog gu sgiobalta.

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

A-nis a’ taipeadh a-steach terminal rnst gheibh sinn aphorism air thuaiream air a’ bhòrd bhidio, a dh’ fhaodar, mar eisimpleir, a chleachdadh ann an litrichean.

An seo tha sinn air co-dhiù rudeigin feumail a sgrìobhadh. An ìre mhath feumail.

Salm

Anns a ’cheum mu dheireadh, cha tug mi seachad seallaidhean-sgrìn a dh’aona ghnothach agus cha do rinn mi mion-sgrùdadh mionaideach air cuid de na gnìomhan, a’ sgrìobhadh dìreach susbaint nam faidhlichean gus am biodh cothrom aig luchd-leughaidh a bhith ag obair leotha fhèin.

Air an "Termux ceum air cheum" seo, tha mi a 'smaoineachadh gum b' fhiach crìochnachadh. Gu dearbh, chan eil seo ach na ciad cheumannan, ach a-nis faodaidh tu gluasad air adhart leat fhèin.

An toiseach, bha mi an dùil sealltainn anns a 'chuairt seo mar a chleachdas mi nmap, sqlmap, ach às aonais mise tha tòrr artaigilean air a' chuspair seo mu thràth. Ma tha thu airson gun lean mi air adhart leis a’ chearcall “Termux step by step”, tha suirbhidh gu h-ìosal agus anns na beachdan faodaidh tu innse dè eile a sgrìobhas tu mu dheidhinn.

Chan fhaod ach luchd-cleachdaidh clàraichte pàirt a ghabhail san sgrùdadh. Soidhnig a-steach, mas e do thoil e.

Lean air adhart le "Termux ceum air cheum"?

  • gu bheil

  • Chan eil

Bhòt 2 neach-cleachdaidh. Chan eil staonadh ann.

Source: www.habr.com

Cuir beachd ann