Termux céim ar chéim (Cuid 2)

В chuid dheireanach Chuireamar aithne ar na bunorduithe Termux, bhunaigh muid nasc SSH le ríomhaire, d’fhoghlaimíomar conas ailiasanna a chruthú agus chuireamar roinnt fóntais úsáideach isteach. An uair seo caithfimid dul níos faide fós, táimid leat:

  • foghlaim faoi Termux:API
  • Déanaimis Python agus nano a shuiteáil, agus scríobhfaimid "Dia duit, a domhan!" i Python
  • foghlaim faoi scripteanna bash agus scríobh script ag baint úsáide as Termux:API
  • Scríobhfaimid clár simplí ag baint úsáide as script bash, Termux:API agus Python

Ós rud é go dtuigimid anois cad a dhéanann na horduithe iontráilte, ón gcéad chéim eile ní dhéanfaidh mé cur síos go mion ar gach gníomh, ach i gcás ina bhféadfadh deacrachtaí a bheith ann, míneoidh mé go cinnte.

Úsáidim ailiasanna go minic, mar sin tá na giorrúcháin a úsáidtear sa chuid seo léirithe anseo:

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

Tá an plean réidh, is féidir linn tosú! Agus ar ndóigh, ná déan dearmad faoin “cluaisín draíochta” (Féach Cuid 1).

Céim 4

Tumadóireacht Síos an Termux:Poll Coinín API

API, cé mhéad sa bhfocal seo do chroí an chódóra atá cumasc

Mura ndéanaimid teagmháil ar an ábhar Termux:API, d’fhéadfaí ár gcéimeanna go léir a laghdú go dtí bróisiúr éigin cosúil le “Linux for Dummies” a athinsint go simplí, mar a tugadh faoi deara go ceart sna tuairimí sa chéad chuid.

Ar dtús, déanaimis Termux:API a shuiteáil ón Margadh Súgartha Google (ní ghortóidh sé Termux a atosú ina dhiaidh sin):

Termux céim ar chéim (Cuid 2)

Ansin ní mór dúinn an pacáiste API a shuiteáil sa chonsól Termux:

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

I gcás turgnaimh tá Android 5.1.1 á úsáid agam, le haghaidh úinéirí Android 7 ní mór duit an Termux:API a ‘chosaint’ trí dhul go Socruithe > Aipeanna Cosanta, nó mar sin is cosúil le glaonna API termux-battery-status, beidh reoite. (Cm. tionscadal wiki)

Anois tá sé in am breathnú níos géire ar na cumais a fuarthas. Is féidir an cur síos is déanaí agus is mionsonraithe ar Termux:API a fháil ag tionscadal wiki. Déanfaidh mé iarracht an ceann is amhairc agus suimiúil a roghnú, rud a ligfidh dom dul i mbun oibre neamhspleách níos fearr sa todhchaí.

Roinnt samplaí de Termux:API

  • termux-ceallraí-stádas
    Filleann an stádas ceallraí
    Termux céim ar chéim (Cuid 2)
  • termux-gile
    Socraíonn sé gile an scáileáin ó 0 go 255
    Termux céim ar chéim (Cuid 2)
  • téarmaux-tósta
    Taispeánann sé preabfhógra sealadach
    Termux céim ar chéim (Cuid 2)
  • termux-torch
    Áirítear flashlight
    Termux céim ar chéim (Cuid 2)
  • téarmaux-wifi-scaninfo
    Filleann sé faisnéis faoin scanadh deireanach ar líonraí Wi-Fi
    Termux céim ar chéim (Cuid 2)

Is furasta a fheiceáil gurb iad na luachanna tuairisceáin teaghráin, foclóirí, liostaí foclóirí, go bunúsach cineálacha sonraí a n-oibríonn Python go maith leo, mar sin is é an chéad chéim eile é a shocrú.

Céim 5

Suiteáil Python agus nano

Chun Python a shuiteáil, scríobh sa teirminéal:

updg
apt install python
apt install python2

Anois tá Python 2 agus 3 suiteáilte againn.

Agus mé ag obair ar an alt seo, fuair mé amach eagarthóir téacs eile, nano, ar thaitin sé níos mó liom ná vim, déanaimis é a shuiteáil:

apt install nano

Tá sé níos éasca le húsáid ná vim, agus tá comhéadan níos so-úsáidte ag nano. Ar fheiste Android, tá vim níos áisiúla fós.

HelloWorld i Python i Termux

Tríd is tríd, bhíothas in ann a dhéanamh gan an bpointe seo, ach is drochbhéalaí é Python a shuiteáil i Termux agus gan HelloWorld a scríobh.

Níl sé mar sprioc agam Python a mhúineadh do dhuine ar bith, mar sin is féidir leo siúd nach bhfuil a fhios acu an cód a chóipeáil go simplí (nó tosú ag foghlaim leo féin, go fortunately tá go leor litríochta ann), agus is féidir leo siúd a bhfuil a fhios acu rud éigin a dhealbhú iad féin. Agus ar an gciúin, taispeánfaidh mé bealach duit freisin chun téacs a chur isteach sa teirminéal gan eagarthóir.

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 céim ar chéim (Cuid 2)

Más rud é nár thug tú earráid faoi deara le linn an phróisis ionchuir agus gur bhrúigh tú Enter cheana féin, ní bheidh tú in ann dul go dtí an líne thuas; chun é seo a dhéanamh, críochnaigh an iontráil trí Ctrl + D a bhrú (is féidir leat fiú cur isteach ar Ctrl + Z) agus athrá gach rud ón tús. Ós rud é gur úsáideamar '>' déanfar an comhad a athscríobh go hiomlán. Ar an ábhar sin, ní mholaim an modh ionchuir seo a úsáid ach amháin má tá tú cinnte go scríobhfaidh tú an cód láithreach gan earráidí.

Céim 6

Scripteanna bash

Is bealach iontach iad scripteanna Bash chun d'obair teirminéil a uathoibriú. Is comhad é an script leis an síneadh .sh (tá an síneadh roghnach) ina bhfuil sraith orduithe teirminéil, cuid acu a ndearnamar staidéar orthu cheana féin. Anseo liosta de na horduithe is mó, ba cheart go n-oibreodh gach rud, ach tabhair faoi deara gur liosta é seo le haghaidh Linux “fásta”, agus ní le haghaidh Termux, ach díreach Rudaí iontach ar scripteanna bash.

Ag baint úsáide as scripteanna is féidir leat beagnach gach gníomh aondathúil a uathoibriú. Scríobhfaimid script bash simplí a aschuireann an luach ón athróg a chruthaigh sé, úsáidfidh mé cat arís, is féidir leat gnátheagarthóir téacs a úsáid, agus is féidir leo siúd ar mian leo go háirithe iad féin a oiliúint macalla a úsáid.

cat >test.sh

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

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

# Ctrl + D

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

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

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

Termux céim ar chéim (Cuid 2)

Bash script le Termux:API

Scríobhaimis rud éigin difriúil ó na HelloWorlds notorious, ach díreach mar useless. Beidh ár script:

  1. iarratas a dhéanamh termux-battery-status API
  2. na sonraí a fuarthas a shábháil ar an comhad test.txt
  3. sonraí ó chomhad a thaispeáint ar an scáileán
  4. an clár hello-world.py a scríobhadh roimhe seo a fhorghníomhú
  5. Scríobh na sonraí a fuarthas ón gclár chuig an comhad test.txt
  6. sonraí ó chomhad a thaispeáint ar an scáileán
  7. sonraí a aistriú ó chomhad go dtí an gearrthaisce
  8. taispeáint ábhar an ghearrthaisce
  9. taispeáin teachtaireacht aníos le sonraí ón ngearrthaisce

Ar dtús, cruthaimis fillteán don obair agus cóipeáil hello-world.py ann mar test.py, cruthaigh na comhaid test.sh agus test.txt san fhillteán seo:

mkdir bashscript

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

cd bashscript/

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

chmod +x test.sh

Anois, ar aon bhealach áisiúil, scríobh an script chuig an gcomhad 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

Anois agus muid san fhillteán bashscript scríobhaimid ./test.sh Feicimid sa teirminéal ar fheiste Android:

Termux céim ar chéim (Cuid 2)

Mar sin scríobhamar an script bash pleanáilte. Is féidir leat é a chaolú trí fhaisnéis faoi fheidhmiú gach gnímh a aschur chuig an consól (ag baint úsáide as macalla), fágfaidh mé é seo do léitheoirí.

Céim 7

Déanaimis rud éigin úsáideach

Réasúnta úsáideach

Déanaimis na téarmaí tagartha a fhoirmliú
Tar éis é a sheoladh, ba cheart don fheidhmchlár líne randamach ó chomhad a chur ar an ngearrthaisce agus fógra a thabhairt faoi seo le teachtaireacht aníos.

Glacaimid script bash mar bhonn agus bainfimid líne randamach as comhad ag baint úsáide as fo-ghnáthamh Python. Déanaimis plean don script:

  1. Rith fo-riachtanas
  2. Aistrigh toradh an fho-ghnáthaimh chuig an ngearrthaisce
  3. Taispeáin teachtaireacht aníos

Déanaimis cinneadh ar ainmneacha an eolaire agus na gcomhad iarratais:

  • fillteán rndstr san eolaire baile
    • foinse - an comhad óna dtógfaimid línte
    • rndstr.py - fo-ghnáthamh a phriontálann líne randamach ón gcomhad foinse go dtí an consól
    • rndstr.sh - comhad script

Cruthaímid an t-eolaire feidhmchlár agus bogaimid isteach ann agus cruthaímid comhaid ann.

Is féidir an chéad dá phointe den phlean scripte a chomhcheangal le píblíne, mar thoradh air sin, ag baint úsáide as Termux:API a fhaighimid:

#!/bin/bash

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

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

Sa chomhad foinse is féidir leat aon téacs a roinnt go loighciúil a chur i línte, chinn mé aphorisms a chur:

Liostú comhaid foinse

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

Níl le déanamh againn ach fo-ghnáthamh a chruthú a bhaintear sreang randamach as an gcomhad foinse.
Lig dúinn cur síos a dhéanamh ar algartam an fho-ghnáthaimh:

  1. Oscail an comhad foinse
  2. Ag comhaireamh líon na línte i gcomhad oscailte
  3. Dún an comhad (ní miste é a choinneáil ar oscailt rófhada)
  4. Gin slánuimhir randamach laistigh de líon na línte sa bhunchomhad
  5. Oscail an comhad foinse
  6. Léiríonn muid líne faoi uimhir an uimhir a ghintear
  7. An comhad a dhúnadh

Cuirimis an algartam i bhfeidhm i Python (scríobhaim faoi 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  #  закрываем файл

Tar éis na comhaid a chruthú agus a scríobh, ní mór duit cearta forghníomhaithe a thabhairt don chomhad rndstr.sh, agus cruthaigh ailias le haghaidh seoladh tapa.

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

Anois ag dul isteach sa teirminéal rnst gheobhaidh muid aphorism randamach ar an gearrthaisce, ar féidir, mar shampla, a úsáid i gcomhfhreagras.

Mar sin scríobhamar rud éigin úsáideach ar a laghad. Réasúnta úsáideach.

PS

Sa chéim dheireanach, níor chuir mé scáileáin scáileáin ar fáil d'aon ghnó agus ní dhearna mé anailís mhionsonraithe ar chuid de na gníomhartha, ag cur síos ar ábhar na gcomhad amháin ionas go mbeadh deis ag léitheoirí oibriú leo féin.

Sílim gur fiú an “Termux céim ar chéim” seo a chríochnú. Ar ndóigh, níl anseo ach na chéad chéimeanna, ach anois is féidir leat dul ar aghaidh leat féin.

Ar dtús, bhí sé beartaithe agam a thaispeáint sa tsraith seo conas nmap, sqlmap a úsáid, ach fiú gan dom tá go leor altanna ar an ábhar seo cheana féin. Más mian leat dom leanúint leis an tsraith “Termux céim ar chéim”, ansin tá suirbhé thíos agus sna tuairimí is féidir leat a mholadh cad eile a scríobh tú faoi.

Ní féidir ach le húsáideoirí cláraithe páirt a ghlacadh sa suirbhé. Sínigh isteach, le do thoil.

Lean ar aghaidh le “Termux céim ar chéim”?

  • Нет

Vótáil 2 úsáideoir. Níl aon staonadh ann.

Foinse: will.com

Add a comment