В
- diajar ngeunaan Termux:API
- Hayu urang pasang Python sareng nano, sareng nyerat ogé "Halo, dunya!" dina Python
- diajar ngeunaan skrip bash sareng nyerat naskah nganggo Termux: API
- Hayu urang nyerat program saderhana nganggo skrip bash, Termux: API sareng Python
Kusabab urang ayeuna ngartos naon paréntah anu diasupkeun, ti lengkah saterusna kuring moal ngajelaskeun unggal Peta di jéntré, tapi dimana aya kasusah, abdi pasti bakal ngajelaskeun.
Kuring sering nganggo landian, janten singketan anu dianggo dina bagian ieu dipidangkeun di dieu:
alias updg='apt update && apt upgrade'
alias py='python'
Rencanana parantos siap, urang tiasa ngamimitian! Sarta tangtu, ulah poho ngeunaan "magic Tab" (
lengkah 4
Nyilem Turun ka Termux: API Rabbit Hole
API, sabaraha dina kecap ieu pikeun jantung coder urang geus ngahiji
Upami urang henteu nyabak kana topik Termux:API, maka sadaya léngkah urang tiasa diréduksi janten retelling saderhana tina sababaraha brosur sapertos "Linux for Dummies," sapertos anu leres-leres dicatet dina koméntar kana bagian kahiji.
Kahiji, hayu urang pasang Termux:API ti Google Play Market (sanggeus éta moal ngarugikeun pikeun ngamimitian deui Termux):
Salajengna urang kedah masang pakét API dina konsol Termux:
updg # Не забываем про alias’ы
apt install termux-api
Pikeun ékspérimén kuring nganggo Android 5.1.1, pikeun anu gaduh Android 7 anjeun kedah 'ngajagi' Termux: API ku jalan ka Setélan> Aplikasi anu Dilindungan, upami henteu, nelepon API sapertos termux-battery-status
, bakal beku. (Cm.
Ayeuna waktuna pikeun ningal langkung caket kana kamampuan anu kaala. Katerangan panganyarna sareng detil ngeunaan Termux:API tiasa dipendakan di
Sababaraha conto Termux:API
- termux-batré-status
Mulangkeun status batré
- termux-kacaangan
Nyetél kacaangan layar ti 0 nepi ka 255
- termux-roti bakar
Nembongkeun bewara pop-up samentara
- termux-obor
Ngawengku senter
- termux-wifi-scaninfo
Ngabalikeun inpormasi ngeunaan scan jaringan Wi-Fi anu terakhir
Gampang ningali yén nilai balikna nyaéta string, kamus, daptar kamus, dasarna jinis data anu dianggo ku Python, janten léngkah salajengna nyaéta nyetél éta.
lengkah 5
Pasang Python sareng nano
Pikeun masang Python, tulis dina terminal:
updg
apt install python
apt install python2
Ayeuna kami parantos dipasang Python 2 sareng 3.
Nalika damel dina tulisan ieu, kuring mendakan pangropéa téksu sanés, nano, anu kuring resep langkung ti vim, hayu urang pasang:
apt install nano
Éta langkung gampang dianggo tibatan vim, sareng nano gaduh antarmuka anu langkung ramah-pamaké. Dina alat Android, vim masih langkung merenah.
HelloWorld di Python di Termux
Sacara umum, éta tiasa dilakukeun tanpa titik ieu, tapi masang Python di Termux sareng henteu nyerat HelloWorld, dina pamanggih kuring, nyaéta tatakrama anu goréng.
Tujuanana kuring henteu ngajar saha waé Python, ku kituna anu henteu terang tiasa nyalin kodeu (atanapi ngamimitian diajar nyalira, untungna aya literatur anu cukup), sareng anu terang tiasa ngémutan hal sorangan. Sareng dina sepi, kuring ogé bakal nunjukkeun anjeun cara pikeun nuliskeun téks dina terminal tanpa pangropéa.
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)
Upami nalika prosés input anjeun henteu perhatikeun kasalahan sareng parantos pencét Lebetkeun, maka anjeun moal tiasa angkat ka garis di luhur; pikeun ngalakukeun ieu, réngsé lebet ku mencét Ctrl + D (anjeun bahkan tiasa ngaganggu Ctrl + Z) sareng malikan sagalana ti mimiti. Kusabab kami nganggo '>' file bakal ditulis deui lengkep. Ku sabab kitu, kuring henteu nyarankeun ngagunakeun metode input ieu kecuali anjeun yakin yén anjeun bakal langsung nyerat kodeu tanpa kasalahan.
lengkah 6
Aksara Bash
Skrip Bash mangrupikeun cara anu saé pikeun ngajadikeun otomatis padamelan terminal anjeun. Skrip nyaéta file kalayan extension .sh (extension nyaéta pilihan) ngandung sakumpulan paréntah terminal, sababaraha nu urang geus diajarkeun. Ieuh
Nganggo skrip anjeun tiasa ngajadikeun otomatis ampir sadaya tindakan anu monoton. Hayu urang nulis Aksara bash basajan nu outputs nilai tina variabel eta dijieun, Kuring deui bakal make ucing, anjeun tiasa nganggo pangropéa téksu normal, sarta maranéhanana anu utamana rék ngalatih sorangan bisa ngagunakeun gema.
cat >test.sh
export str="Привет, Хабр!"
# export создает переменную str
# и присваивает ей значение "Привет, Хабр!"
# Не ставьте пробелы до и после ‘=’
echo $str # Для обращения к переменным перед ними ставится ‘$’
# Ctrl + D
# ./test.sh для запуска скрипта, но если это сделать сейчас то будет ошибка
# для избавления от ошибки нужно сделать файл test.sh исполняемым
chmod +x test.sh
# chmod изменяет права доступа (+ добавить / - убрать)
# ‘+x’ означает что мы делаем файл исполняемым
./test.sh # Запускаем выполнение нашего скрипта
Skrip Bash sareng Termux: API
Hayu urang nulis hal béda ti HelloWorlds notorious, tapi sagampil gunana. Skrip urang bakal kieu:
- ngalakukeun pamundut API termux-battery-status
- simpen data narima kana file test.txt
- mintonkeun data tina file dina layar
- laksanakeun program hello-world.py anu ditulis sateuacana
- Nulis data nampi ti program kana file test.txt
- mintonkeun data tina file dina layar
- mindahkeun data tina file ka clipboard
- mintonkeun eusi clipboard
- mintonkeun talatah pop-up jeung data ti clipboard
Kahiji, hayu urang nyieun folder pikeun digawé tur salin hello-world.py ka dinya salaku test.py, nyieun file test.sh jeung test.txt dina folder ieu:
mkdir bashscript
cat hello-world.py >> bashscript/test.py
cd bashscript/
touch test.sh test.txt # touch создает файлы
chmod +x test.sh
Ayeuna, ku cara anu gampang, tuliskeun naskah kana file 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
Ayeuna aya dina folder bashscript urang nyerat ./test.sh
Urang tingali dina terminal dina alat Android:
Janten urang nyerat skrip bash anu direncanakeun. Anjeun tiasa éncér ku kaluaran informasi dina palaksanaan unggal aksi ka konsol nu (ngagunakeun gema), Kuring gé ninggalkeun ieu pikeun pamiarsa.
lengkah 7
Hayu urang ngalakukeun hal mangpaat
Relatip mangpaat
Hayu urang ngarumuskeun istilah rujukan
Saatos peluncuran, aplikasi kedah nempatkeun garis acak tina file dina clipboard sareng ngabéjaan ngeunaan ieu kalayan pesen pop-up.
Hayu urang nyandak skrip bash salaku dasar sareng nimba garis acak tina file nganggo subrutin Python. Hayu urang ngadamel rencana pikeun naskah:
- Ngajalankeun subrutin
- Mindahkeun hasil subrutin kana clipboard
- Témbongkeun pesen pop-up
Hayu urang mutuskeun nami diréktori sareng file aplikasi:
- rndstr folder dina diréktori imah
- source - file ti mana urang bakal nyandak garis
- rndstr.py - a subroutine nu prints garis acak tina file sumber kana konsol nu
- rndstr.sh - file skrip
Kami nyiptakeun diréktori aplikasi sareng ngalih ka dinya sareng nyiptakeun file di dinya.
Dua titik mimiti rencana naskah bisa digabungkeun ku pipa, salaku hasilna, ngagunakeun Termux: API kami meunang:
#!/bin/bash
python ~/rndstr/rndstr.py | termux-clipboard-set # 1 и 2 пункты плана работы
termux-toast "OK" # 3 пункт. Выводим всплывающее сообщение "ОК"
Dina file sumber anjeun tiasa nempatkeun téks naon waé sacara logis dibagi kana garis, kuring mutuskeun pikeun nempatkeun aphorisms:
Daptar file sumber
Искренность не есть истина. Л. Лавель
Терпи и воздерживайся. Эпиктет
Благородно только то, что бескорыстно. Ж. Лабрюйер
Будь благоразумно отважным. Б. Грасиан
Доброта лучше красоты. Г. Гейне
Для великих дел необходимо неутомимое постоянство. Ф.Вольтер
Если ты хочешь, чтобы тебе всегда угождали, прислуживай себе сам. Б. Франклин
Чрезмерная скромность есть не что иное, как скрытая гордость. А. Шенье
Очень умным людям начинают не доверять, если видят их смущение. Ф. Ницше
Бедность указывает на отсутствие средств, а не на отсутствие благородства. Д. Боккаччо
Нужно остерегаться доведения скромности до степени унижения. А. Бакиханов
Кто отказывается от многого, может многое себе позволить. Ж. Шардон
Когда нам платят за благородный поступок, его у нас отнимают. Н. Шамфор
Не получить вовсе - не страшно, но лишиться полученного обидно. Клавдий Элиан
Легче переносить терпеливо то, что нам не дано исправить. Гораций
Устаешь ждать, но насколько хуже было бы, если бы ждать стало нечего. Б. Шоу
Все приходит вовремя, если люди умеют ждать. Ф. Рабле
Своим терпением мы можем достичь большего, чем силой. Э. Берк
Надо уметь переносить то, чего нельзя избежать. М. Монтень
Кто в деле смел, тот слов не устрашится. Софокл
Я не люблю сражаться, я люблю побеждать. Б. Шоу
Затравленный и прижатый к стене кот превращается в тигра. М. Сервантес
Достойный человек не идет по следам других людей. Конфуций
Великий ум проявит свою силу не только в умении мыслить, но и в умении жить. Р. Эмерсон
Слава - товар невыгодный. Стоит дорого, сохраняется плохо. О. Бальзак
Сдержанность и уместность в разговорах стоят больше красноречия. Ф. Бэкон
Кто молчать не умеет, тот и говорить, не способен. Сенека Младший
Хорошие манеры состоят из маленьких жертв. Ф. Честерфилд
Добрый человек не тот, кто умеет делать добро, а тот, кто не умеет делать зла. В. Ключевский
Не произносите бесповоротных суждений! Августин
Ничего слишком! Солон
Sadaya anu urang kedah laksanakeun nyaéta nyiptakeun subrutin anu nimba senar acak tina file sumber.
Hayu urang ngajelaskeun algoritma tina subroutine nu:
- Buka file sumber
- Ngitung jumlah garis dina file anu kabuka
- Tutup filena (teu aya gunana tetep kabuka pikeun lami teuing)
- Ngahasilkeun integer acak dina jumlah garis dina file sumber
- Buka file sumber
- Urang mintonkeun garis dina jumlah jumlah dihasilkeun
- Nutup file
Hayu urang nerapkeun algoritma dina Python (kuring nulis dina 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 # закрываем файл
Saatos file didamel sareng ditulis, anjeun kedah masihan hak palaksanaan kana file rndstr.sh
, sarta nyieun alias pikeun peluncuran gancang.
alias rnst="~/rndstr/rndstr.sh"
Ayeuna ku asup ka terminal rnst
Kami bakal nampi aphorism acak dina clipboard, anu, contona, tiasa dianggo dina korespondensi.
Janten urang nyerat sahenteuna anu mangpaat. Relatip mangpaat.
Hal
Dina léngkah anu terakhir, kuring ngahaja henteu nyayogikeun layar sareng henteu nganalisa sacara rinci sababaraha tindakan, ngan ukur ngajelaskeun eusi file supados pamiarsa ngagaduhan kasempetan pikeun damel nyalira.
Jigana éta patut rengse ieu "Termux step by step". Tangtosna, ieu mangrupikeun léngkah anu munggaran, tapi ayeuna anjeun tiasa maju nyalira.
Mimitina, kuring ngarencanakeun pikeun nunjukkeun dina séri ieu kumaha ngagunakeun nmap, sqlmap, tapi sanaos tanpa kuring parantos seueur tulisan ngeunaan topik ieu. Upami anjeun hoyong kuring neraskeun séri "Termux step by step", teras aya survey di handap sareng dina koméntar anjeun tiasa nyarankeun naon deui anu kedah ditulis.
Ngan pamaké nu kadaptar bisa ilubiung dina survey.
Teruskeun "Termux step by step"?
-
yen
-
teu
2 pamaké milih. Aya henteu abstentions.
sumber: www.habr.com