Byla vydána verze 1.93.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Svobodný operační systém ReactOS (Wikipedie), jehož cílem je kompletní binární kompatibilita s aplikacemi a ovladači pro Windows, slaví 30. narozeniny.
Společnost Raspberry Pi má nově v nabídce flash disky Raspberry Pi Flash Drive: 128 GB za 30 dolarů a 256 GB za 55 dolarů.
Technologie Skip pro multiplatformní mobilní vývoj, která umožňuje vývojářům vytvářet iOS a Android aplikace z jediné Swift a SwiftUI kódové základny, se s vydáním verze 1.7 stala open source.
Na GitHubu byl zveřejněn algoritmus "Pro vás" sociální sítě 𝕏.
Byla vydána nová major verze 34.0.0 webového prohlížeče Pale Moon (Wikipedie) vycházejícího z Firefoxu. Přehled novinek v poznámkách k vydání.
Win8DE je desktopové prostředí pro Wayland, inspirované nechvalně proslulým uživatelským rozhraním Metro z Windows 8. Nabízí dlaždicové rozhraní s velkými tlačítky a jednoduchou navigací, optimalizované pro dotyková zařízení. Cílem projektu je přetvořit design operačního systému Windows 8 do funkčního a minimalistického rozhraní vhodného pro každodenní použití na Linuxu.
Laboratoře CZ.NIC vydaly Datovku 4.28.0 a Mobilní Datovku 2.6.0. Hlavní novinkou je ukládání rozpracovaných datových zpráv do konceptů. Datovka je svobodné multiplatformní aplikace pro přístup k datovým schránkám a k trvalému uchovávání datových zpráv v lokální databázi.
Unix Pipe Game je vzdělávací karetní hra zaměřená na děti a rodiče, která děti učí používat unixové příkazy prostřednictvím interaktivních úkolů. Klíčovým prvkem hry je využití symbolu | pro pipeline neboli 'rouru', který umožňuje propojit výstupy a vstupy jednotlivých unixových příkazů, v tomto případě vytištěných na kartičkách. Předpokládá se, že rodič má alespoň nějaké povědomí o unixových příkazech a jejich provazování pomocí |.
… více »PCIem je linuxový framework, který vytváří virtuální zařízení PCIe pomocí technik, které umožňují hostitelskému operačnímu systému rozpoznat tyto syntetické 'neexistující' karty jako fyzické zařízení přítomné na sběrnici. Framework PCIem je primárně zamýšlen jako pomůcka pro vývoj a testování ovladačů bez nutnosti použít skutečný hardware. Dle tvrzení projektu si fungování PCIem můžeme představit jako MITM (Man-in-the-Middle), který se nachází mezi ovladači a kernelem.
Jak zapsat něco takového?:
SERVERS=()
SERVERS[ftb][name]='Name'
SERVERS[ftb][service]='abc.jar'
SERVERS[ftb][dir]='/var/abc'
SERVERS[van][name]='Van'
SERVERS[van][service]='van.jar'
SERVERS[van][dir]='/var/van'
Řešení dotazu:
public class TestServers {
private HashMap< String, Map< String, Object>> servers;
protected HashMap< String, Map< String, Object>> getServers() {
if (servers == null)
servers = new HashMap< String, Map< String,Object>>();
return servers;
}
public Object getValue(String server,String key){
return getServers().get(server).get(key);
}
public void putValue(String server,String key,Object value){
getServers().get(server).put(key, value);
}
}
SERVERS['ftb#name']='Name'. Pochopitelně pak nejde jednoduše udělat nic jako SERVERS['ftb'].
Resp. ono není problém přejít na python :) Jen jak na to pole??
SERVERS = {
'ftb': {
'name': 'Name',
'service': 'abc.jar',
'dir': '/var/abc',
},
'van': {
'name': 'Van',
'service': 'van.jar',
'dir': '/var/van',
},
}
Můžeš to klidně plnit i postupně nebo jakkoli...
Když jsme u toho. Půjde vůbec použít v konzoli. -> příkaz /var/script start ....? Jak zachytim to slovo start.
No když mám bash script, tak mohu volat /var/script start. Zachtim si slovo start a případně i nějaké argumenty. Jak toto udělat u toho pythonu?
nefunguje.
NameError: name 'argv' is not defined
Joo už to mám díky. :)
Ano jedná se o bash, viz štítek.
Jde o to, že mám script na spuštění serveru a tyto proměnné jsou potřeba pro server. Aktuálně mám dva.
Proto jsem chtěl toto pole a pak to projet přes 'foreach' a spustit po nastartování serveru.
Samozřejmě mám pak nějaké funkce jako restart stop, které chci pouštět pomocí restart name, tedy: restart van nebo restart ftb
Jak v python spustit tyto příkazy:
pgrep -u root -f $SERVICE > /dev/null
ps ax | grep -v grep | grep -v -i SCREEN | grep $SERVERJAR
Pořád to u pomlček řve něco o mezerách :/
from __subprocess__ import print_function
import subprocess
import re
SERVICE="foobar"
NULL=open("/dev/null", "wb")
#pgrep -u root -f $SERVICE > /dev/null
subprocess.call(["pgrep", "-u", "root", "-f", SERVICE], stdout=NULL)
#ps ax | grep -v grep | grep -v -i SCREEN | grep $SERVERJAR
# ^^^ neni lepsi pgrep screen?
SERVERJAR="hamspam"
for line in subprocess.check_output(["ps", "ax"]):
if re.search(SERVERJAR, line):
print(line, end='')
jinak viz dokumentace
from __future__ import print_function
Díky. Ale to zapisování v pthon je nějak divné-
Potřebuji spustit tennto příkaz:
'cd ' + getServer()['dir'] + ' && screen -dmS ' + getServer()['screen'] + ' java -Xms512M -Xmx2048M -XX:MaxPermSize=1024M -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalPacing -XX:ParallelGCThreads=2 -XX:+AggressiveOpts -jar ' + getServer()['service'] + ' nogui'
Díky za rady :)
Ještě jedna věc. Jak spustit příkaz s parametrem po přihlášení?
Potřebuji spustit soubor /etc/init.d/minecraft startAll
systemctl enable.
Pokud neexistuje, vytvořit systemd unitu. Vyžaduje přepsat ten minecraft skript -- který zjevně ani nefunguje s normálním SysV start/stop, ale potřebuje jakési speciální příkazy -- do něčeho použitelnějšího.
Pokud není ochota cokoli udělat pořádně, tak to fakenout (a nedivit se, že je to rozbité):
[Unit] Description=Whatever # Put dependences here. [Service] Type=oneshot RemainAfterExit=yes ExecStart=/etc/init.d/minecraft startAllnebo tak něco.
Tiskni
Sdílej: