Nástroj sql-tap je proxy mezi aplikací a databází, které zachytává všechny SQL dotazy a zobrazuje je v terminálovém rozhraní. Zde lze téměř v reálném čase zkoumat dotazy, sledovat transakce a spouštět SQL příkaz EXPLAIN. Podporované databázové systémy jsou pouze PostgreSQL a MySQL. Zdrojový kód je dostupný na GitHubu, pod licencí MIT.
Byla vydána nová verze 9.2 textového editoru Vim (Vi IMproved). Přináší vylepšené doplňování, podporu schránky ve Waylandu, podporu XDG Base Directory (konfigurace v $HOME/.config/vim), vylepšené Vim9 skriptování nebo lepší zvýrazňování změn. Vim zůstává charityware. Nadále vybízí k podpoře dětí v Ugandě. Z důvodu úmrtí autora Vimu Brama Moolenaara a ukončení činnosti jím založené charitativní organizace ICCF Holland projekt Vim navázal spolupráci s charitativní organizaci Kuwasha.
Byl představen editor MonoSketch, webová aplikace pro tvorbu diagramů, technických nákresů, flowchartů a různých dalších vizualizací, to vše jenom z ASCII znaků. Všechny operace běží pouze v prohlížeči uživatele a neprobíhá tedy žádné nahrávání dat na server. Zdrojový kód aplikace (drtivá většina Kotlin, žádné C#) je dostupný na GitHubu pod licencí Apache 2.0.
Byla vydána nová verze 3.7.0 multiplatformního svobodného frameworku pro zpracování obrazu G'MIC (GREYC's Magic for Image Computing, Wikipedie). Přehled novinek i s náhledy nových filtrů na PIXLS.US.
Všem na AbcLinuxu vše nejlepší k Valentýnu aneb Dni lásky ke svobodnému softwaru (I love Free Software Day, Mastodon, 𝕏).
Eric Migicovsky představil Pebble Emulator, tj. emulátor hodinek Pebble (PebbleOS) běžící ve webovém prohlížeči. Za 6 hodin jej napsal Claude Code. Zdrojové kódy jsou k dispozici na GitHubu.
Byla vydána nová verze 3.41 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.11 souvisejícího programovacího jazyka Dart (Wikipedie).
Rusko zcela zablokovalo komunikační platformu WhatsApp, řekl včera mluvčí Kremlu Dmitrij Peskov. Aplikace, jejímž vlastníkem je americká společnost Meta Platforms a která má v Rusku na 100 milionů uživatelů, podle Peskova nedodržovala ruské zákony. Mluvčí zároveň lidem v Rusku doporučil, aby začali používat domácí aplikaci MAX. Kritici tvrdí, že tato aplikace ruské vládě umožňuje lidi sledovat, což úřady popírají.
Před 34 lety, ve čtvrtek 13. února 1992, se tehdejší Česká a Slovenská Federativní Republika oficiálně (a slavnostně) připojila k Internetu.
Agent umělé inteligence vytvořil 'útočný' článek o Scottu Shambaughovi, dobrovolném správci knihovny matplotlib, poté, co vývojář odmítl agentem navrženou změnu kódu (pull request). 'Uražený' agent autonomně sepsal a publikoval na svém blogu článek, který přisuzuje Shambaughovi smyšlené motivace, egoismus a strach z AI coby konkurence.
top -b -n 1 -p "$mujprocespid"|grep "$mujprocespid" |awk '{ print $9 }'
Řešení dotazu:
Ja len ze ten grep je nepotrebny:
top -b -n 1 -p "$pid" | awk '/'"$pid"'/{ print $9 }'
Viem, ze si cakal viac, ale jednoduchsie ako to mas, to ja nepoznam.
Nic extra, ale aspon sa netreba spoliehat na 9. pole, co popravde aj mna napadlo este pred odoslanim prveho prispevku.
pid=""; while $(ps "$pid" &>/dev/null); do top -d 0.1 -b -n 1 -p "$pid" | awk '/'%CPU'/{for (i = 1; i <= NF; i++) ( $i ~ "%CPU") && field=i; getline; print $field;}'; done
-d parameter pre top si samozrejme nastav sam, hoc to, co potato spominal, bude zrejme viac davat realne vysledky.
#!/bin/bash
myprogram="ipolldevd"
pidmyprogram="$(pgrep -x $myprogram)"
choosecolumn="%CPU"
cpuloadmyprogram=$(top -b -n 1 -p "$pidmyprogram" | awk '
NR==FNR { for(i=1;i<=NF;i++) if ($i ~ "'"$choosecolumn"'") { nrcolumn=""i""; next }}
/'"$pidmyprogram"'/{ print $nrcolumn }')
echo $cpuloadmyprogram
Takže například přečíst jednou, počkat, přečíst podruhé, vydělit časovým intervalem a $(getconf CLK_TCK).Proč to ještě dělit getconf CLK_TCK? Nestačí jenom:
(přečíst_jednou - přečíst_podruhé)/časový_interval
#Total time spent for the process: total_time = utime + stime
#If we want to include the time from children processes:
#total_time = total_time + cutime + cstime
#cpu_usage = 100 * ((total_time / Hertz) / seconds)
#!/bin/bash
myprogram="ipolldevd"
pidmyprogram="$(pgrep -x $myprogram)"
seconds="5"
hertz="$(getconf CLK_TCK)"
cputime1=$(cat /proc/$pidmyprogram/stat | awk '{print "(" , $14, " + ", $15, ")"}' | bc)
sleep "$seconds"
cputime2=$(cat /proc/$pidmyprogram/stat | awk '{print "(" , $14, " + ", $15, ")"}' | bc)
cpuload=$(echo "100*(${cputime2} - ${cputime1})/$seconds/$hertz" | bc)
echo $cputime
Díky za radu s tím "getconf CLK_TCK". Podle tohoto "klíčového" slova se už na internetu zobrazí odkazy na měření zátěže CPU. Vyřešeno, díky.
#!/bin/bash
myprogram="ipolldevd"
pidmyprogram="$(pgrep -x $myprogram)"
seconds="2"
CORES=$(grep -c ^processor /proc/cpuinfo 2>/dev/null)
START=`awk 'BEGIN {sum = 0} /^cpu /{ for (i = 1; i <= NF; ++i) { sum += $i } } END {print sum}' /proc/stat`
cputime1=$(cat /proc/$pidmyprogram/stat | awk '{print "(" , $14, " + ", $15, ")"}' | bc)
sleep "$seconds"
cputime2=$(cat /proc/$pidmyprogram/stat | awk '{print "(" , $14, " + ", $15, ")"}' | bc)
STOP=`awk 'BEGIN {sum = 0} /^cpu /{ for (i = 1; i <= NF; ++i) { sum += $i } } END {print sum}' /proc/stat`
cpuload=$(echo "${CORES} * 100 * (${cputime2} - ${cputime1})/(${STOP} - ${START})" | bc)
echo "Celkova zatez programu = $cpuload procent"
Tiskni
Sdílej: