В
- koyi game da Termux: API
- shigar Python da nano, kuma rubuta "Sannu, duniya!" in Python
- koyi game da rubutun bash kuma rubuta rubutun ta amfani da Termux: API
- ta amfani da rubutun bash, Termux: API da Python za mu rubuta wani tsari mai sauƙi
Tun da yanzu mun fahimci abin da umarnin shigarwa ke yi, to daga mataki na gaba ba zan bayyana kowane aiki a cikin irin wannan dalla-dalla ba, amma inda akwai matsaloli, tabbas zan yi bayani.
Ina amfani da laƙabi da yawa, don haka an nuna gajerun da aka yi amfani da su a wannan ɓangaren a nan:
alias updg='apt update && apt upgrade'
alias py='python'
An shirya shirin, za ku iya farawa! Kuma ba shakka, kar a manta game da "Magic Tab" (
Mataki 4
Diving Down the Termux: API Rabbit Hole
API nawa ya haɗu a cikin wannan kalmar don zuciyar mai rikodin
Idan ba mu taɓa batun Termux: API ba, to, duk matakanmu za a iya rage su zuwa sauƙi mai sauƙi na wasu ƙasida kamar "Linux for Dummies", kamar yadda aka lura da kyau a cikin sharhin zuwa kashi na farko.
Da farko, shigar da Termux: API daga Kasuwar Google Play (ba ya cutar da sake farawa Termux daga baya):
Na gaba, muna buƙatar shigar da kunshin API a cikin na'urar wasan bidiyo na Termux:
updg # Не забываем про alias’ы
apt install termux-api
Don gwaji Ina amfani da Android 5.1.1, don masu Android 7 suna buƙatar "kare" Termux: API ta zuwa 'Settings'> 'Protected Apps', in ba haka ba API kira kamar termux-battery-status
, zai rataya. (Cm.
Yanzu yana da kyau a yi nazari sosai kan damar da aka samu. Ana iya samun sabon kuma mafi cikakken bayanin Termux: API a
Wasu Termux: Misalan API
- termux-baturi-halin
Yana dawo da yanayin baturin
- termux-haske
Yana saita hasken allo daga 0 zuwa 255
- termux-toast
Yana nuna sanarwar toast na ɗan lokaci
- wutar lantarki
Ya haɗa da hasken tocila
- termux-wifi-scaninfo
Yana dawo da bayanai game da binciken ƙarshe na cibiyoyin sadarwar Wi-Fi
Yana da sauƙin ganin cewa ƙimar dawowa sune kirtani, ƙamus, jerin ƙamus, gabaɗaya, nau'ikan bayanai waɗanda Python ke aiki da su sosai, don haka mataki na gaba shine saita shi.
Mataki 5
Sanya Python da nano
Don shigar da Python, rubuta a cikin tasha:
updg
apt install python
apt install python2
Yanzu muna da 2 da 3 Python shigar.
Yayin aiki akan labarin, na gano wani editan rubutun nano wanda na fi so fiye da vim, bari mu shigar da shi:
apt install nano
Yana da sauƙin amfani fiye da vim, kuma nano yana da ƙarin haɗin haɗin mai amfani. A kan na'urar Android, vim har yanzu ya fi dacewa.
HelloWorld a cikin Python a Termux
Gabaɗaya, yana yiwuwa a yi ba tare da wannan abu ba, amma sanya Python a cikin Termux kuma ba rubuta HelloWorld ba, a ganina, munanan ɗabi'a ne.
Ba na nufin koya wa kowa Python, don haka waɗanda ba su sani ba za su iya yin kwafin code ɗin kawai (ko su fara koyo da kansu, tunda akwai isassun adabi), waɗanda suka sani suna iya yin wani abu da kansu. Kuma zan "ƙarƙashin ɓoye" har yanzu ina nuna hanyar shigar da rubutu a cikin tashar ba tare da edita ba.
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)
Idan baku lura da kuskure ba yayin aiwatar da shigarwa kuma an riga an danna Shigar, to ba za ku iya zuwa layin da ke sama ba, don yin wannan, ƙare shigarwar ta latsa Ctrl + D (zaku iya katse Ctrl + gabaɗaya). Z) kuma maimaita komai daga farkon. Tun da muka yi amfani da ''>' to za a sake rubuta fayil ɗin gaba ɗaya. Don haka, ban ba da shawarar yin amfani da wannan hanyar shigar ba sai dai idan kun tabbata cewa za ku rubuta lambar nan da nan ba tare da kurakurai ba.
Mataki 6
Rubutun bash
Rubutun Bash babbar hanya ce don sarrafa aikin tashar ku. Rubutun fayil ne tare da tsawo na .sh (tsarin na zaɓi ne) yana ɗauke da saitin umarni na ƙarshe, wasu waɗanda muka riga muka yi nazari. nan
Tare da taimakon rubutun, zaku iya sarrafa sarrafa kusan duk ayyukan da ba su dace ba. Bari mu rubuta rubutun bash mafi sauƙi wanda ke nuna ƙimar daga madaidaicin da ya ƙirƙira, Zan sake amfani da cat, zaku iya amfani da editan rubutu na yau da kullun, kuma waɗanda musamman suke son horar da kansu na iya amfani da amsawa.
cat >test.sh
export str="Привет, Хабр!"
# export создает переменную str
# и присваивает ей значение "Привет, Хабр!"
# Не ставьте пробелы до и после ‘=’
echo $str # Для обращения к переменным перед ними ставится ‘$’
# Ctrl + D
# ./test.sh для запуска скрипта, но если это сделать сейчас то будет ошибка
# для избавления от ошибки нужно сделать файл test.sh исполняемым
chmod +x test.sh
# chmod изменяет права доступа (+ добавить / - убрать)
# ‘+x’ означает что мы делаем файл исполняемым
./test.sh # Запускаем выполнение нашего скрипта
Rubutun Bash tare da Termux: API
Bari mu rubuta wani abu daban da sanannen HelloWorlds, amma kamar mara amfani. Rubutun mu zai kasance:
- aiwatar da buƙatar API na termux-battery-status
- ajiye bayanan da aka karɓa zuwa gwajin fayil.txt
- buga bayanai daga fayil zuwa allo
- aiwatar da shirin hello-world.py da aka rubuta a baya
- rubuta bayanan da aka karɓa daga shirin zuwa gwajin fayil.txt
- buga bayanai daga fayil zuwa allo
- matsar da bayanai daga fayil zuwa allo
- nuna abubuwan da ke cikin allo
- nuna saƙon bugu tare da bayanai daga allon allo
Da farko, ƙirƙiri babban fayil don aiki kuma kwafi hello-world.py a can azaman test.py, ƙirƙirar fayilolin test.sh da test.txt a cikin wannan babban fayil:
mkdir bashscript
cat hello-world.py >> bashscript/test.py
cd bashscript/
touch test.sh test.txt # touch создает файлы
chmod +x test.sh
Yanzu, ta kowace hanya mai dacewa, rubuta rubutun zuwa fayil ɗin 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
Yanzu, kasancewa a cikin babban fayil ɗin bashscript, muna rubutawa ./test.sh
Mun lura a cikin tasha akan na'urar Android:
Don haka mun rubuta rubutun bash da aka tsara. Kuna iya tsoma shi tare da fitarwa zuwa na'ura mai ba da hanya tsakanin hanyoyin sadarwa na bayanai game da aiwatar da kowane aiki (ta amfani da echo), Zan bar wannan ga masu karatu.
Mataki 7
Mu yi wani abu mai amfani
Dangantaka mai amfani
Bari mu tsara sharuɗɗan tunani
Bayan ƙaddamarwa, aikace-aikacen ya kamata ya sanya layin bazuwar daga fayil ɗin akan allon allo kuma ya sanar da shi tare da saƙon tashi.
Za mu ɗauki rubutun bash a matsayin tushe, za mu fitar da layin bazuwar daga fayil ta amfani da faifan Python subroutine. Bari mu yi tsarin aikin rubutun:
- Run subbroutine
- Canja wurin sakamakon subbroutine zuwa allon allo
- Nuna saƙon bugu
Bari mu ayyana sunayen kundin adireshi da fayilolin aikace-aikacen:
- rndstr babban fayil a cikin gida directory
- source - fayil ɗin da za mu ɗauki layi
- rndstr.py - ƙaramin layi wanda ke nuna layin bazuwar daga fayil ɗin tushen zuwa na'ura wasan bidiyo
- rndstr.sh - fayil ɗin rubutun
Ƙirƙiri kundin adireshin aikace-aikace kuma matsa zuwa gare shi kuma ƙirƙirar fayiloli a wurin.
Za a iya haɗa maki biyu na farko na shirin rubutun ta bututu, sakamakon haka, ta amfani da Termux: API muna samun:
#!/bin/bash
python ~/rndstr/rndstr.py | termux-clipboard-set # 1 и 2 пункты плана работы
termux-toast "OK" # 3 пункт. Выводим всплывающее сообщение "ОК"
A cikin fayil ɗin tushen, zaku iya sanya kowane rubutu a hankali zuwa cikin layi, na yanke shawarar sanya aphorisms:
Jerin fayilolin tushen
Искренность не есть истина. Л. Лавель
Терпи и воздерживайся. Эпиктет
Благородно только то, что бескорыстно. Ж. Лабрюйер
Будь благоразумно отважным. Б. Грасиан
Доброта лучше красоты. Г. Гейне
Для великих дел необходимо неутомимое постоянство. Ф.Вольтер
Если ты хочешь, чтобы тебе всегда угождали, прислуживай себе сам. Б. Франклин
Чрезмерная скромность есть не что иное, как скрытая гордость. А. Шенье
Очень умным людям начинают не доверять, если видят их смущение. Ф. Ницше
Бедность указывает на отсутствие средств, а не на отсутствие благородства. Д. Боккаччо
Нужно остерегаться доведения скромности до степени унижения. А. Бакиханов
Кто отказывается от многого, может многое себе позволить. Ж. Шардон
Когда нам платят за благородный поступок, его у нас отнимают. Н. Шамфор
Не получить вовсе - не страшно, но лишиться полученного обидно. Клавдий Элиан
Легче переносить терпеливо то, что нам не дано исправить. Гораций
Устаешь ждать, но насколько хуже было бы, если бы ждать стало нечего. Б. Шоу
Все приходит вовремя, если люди умеют ждать. Ф. Рабле
Своим терпением мы можем достичь большего, чем силой. Э. Берк
Надо уметь переносить то, чего нельзя избежать. М. Монтень
Кто в деле смел, тот слов не устрашится. Софокл
Я не люблю сражаться, я люблю побеждать. Б. Шоу
Затравленный и прижатый к стене кот превращается в тигра. М. Сервантес
Достойный человек не идет по следам других людей. Конфуций
Великий ум проявит свою силу не только в умении мыслить, но и в умении жить. Р. Эмерсон
Слава - товар невыгодный. Стоит дорого, сохраняется плохо. О. Бальзак
Сдержанность и уместность в разговорах стоят больше красноречия. Ф. Бэкон
Кто молчать не умеет, тот и говорить, не способен. Сенека Младший
Хорошие манеры состоят из маленьких жертв. Ф. Честерфилд
Добрый человек не тот, кто умеет делать добро, а тот, кто не умеет делать зла. В. Ключевский
Не произносите бесповоротных суждений! Августин
Ничего слишком! Солон
Mu kawai muna buƙatar ƙirƙira ƙaramin abu wanda ke fitar da kirtani bazuwar daga fayil ɗin tushen.
Bari mu rubuta algorithm na subroutine:
- Buɗe fayil ɗin tushe
- Ƙididdiga adadin layi a cikin buɗaɗɗen fayil
- Rufe fayil ɗin (babu wani abu da zai buɗe shi don ƙarin lokaci)
- Muna samar da madaidaicin lamba a cikin adadin layin fayil ɗin tushe
- Buɗe fayil ɗin tushe
- Muna fitar da layi a ƙarƙashin lambar da aka samar
- Rufe fayil ɗin
Muna aiwatar da algorithm a Python (na rubuta a ƙarƙashin 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 # закрываем файл
Bayan an ƙirƙiri fayilolin kuma an rubuta su, kuna buƙatar ba da izinin aiwatar da fayil ɗin rndstr.sh
, kuma ƙirƙirar laƙabi don ƙaddamar da sauri.
alias rnst="~/rndstr/rndstr.sh"
Yanzu buga a Terminal rnst
za mu sami bazuwar aphorism a kan allo, wanda, alal misali, ana iya amfani da shi a cikin wasiƙa.
Anan mun rubuta akalla wani abu mai amfani. Dangantaka mai amfani.
Zab
A mataki na ƙarshe, da gangan ban samar da hotunan kariyar kwamfuta ba kuma ban bincika dalla-dalla wasu ayyukan ba, rubuta kawai abubuwan da ke cikin fayilolin don masu karatu su sami damar yin aiki da kansu.
A kan wannan "Termux mataki-mataki", Ina tsammanin yana da daraja a gama. Tabbas, waɗannan matakan farko ne kawai, amma yanzu zaku iya ci gaba da kanku.
Da farko, na yi shirin nunawa a cikin wannan zagayowar yadda ake amfani da nmap, sqlmap, amma ba tare da ni ba, an riga an sami labarai da yawa akan wannan batu. Idan kana son in ci gaba da zagayowar "Termux mataki-mataki", to, akwai binciken da ke ƙasa kuma a cikin maganganun za ku iya ba da shawarar abin da za ku rubuta game da shi.
Masu amfani da rajista kawai za su iya shiga cikin binciken.
Ci gaba "Termux mataki-mataki"?
-
A
-
Babu
Masu amfani 2 sun kada kuri'a. Ba a kauracewa zaben ba.
source: www.habr.com