abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 17:02 | Pozvánky
Přijďte si popovídat o open source obecně a openSUSE konkrétně s dalšími uživateli a vývojáři. Oslava nového vydání openSUSE Leap se uskuteční 16. prosince od 17:00 v nových prostorách firmy SUSE v Praze. K dispozici bude nějaké občerstvení a DVD pro ty, kdo je sbírají nebo ještě mají mechaniku. Po párty v kanceláři se bude pokračovat v některé z hospod v okolí.
Miška | Komentářů: 0
dnes 14:55 | Zajímavý software

Byla vydána verze Alpha 1.0 otevřeného operačního systému pro chytré hodinky AsteroidOS. Podporovány jsou hodinky LG G Watch, LG G Watch Urbane, Asus ZenWatch 2 a Sony Smartwatch 3. Ukázka ovládání hodinek na YouTube. Jaroslav Řezník přednášel o AsteroidOS na chytrých hodinkách (videozáznam) na letošní konferenci OpenAlt.

Ladislav Hagara | Komentářů: 0
dnes 13:30 | Zajímavý software

Byly uvolněny zdrojové kódy známé rogue-like hry DoomRL. Počátky hry jsou v roce 2002. Je napsána ve FreePascalu a zdrojový kód je nyní k dispozici na GitHubu pod licencí GNU GPL 2.0. Autor pracuje na nové hře Jupiter Hell, která je moderním nástupcem DoomRL a na jejíž vývoj shání peníze prostřednictvím Kickstarteru.

Blaazen | Komentářů: 0
dnes 13:15 | Pozvánky

Přijďte s námi oslavit vydání Fedory 25. Na programu budou přednášky o novinkách, diskuse, neřízený networking atd. Release Party se bude konat 16. prosince v prostorách společnosti Etnetera. Na party budou volně k dispozici také propagační materiály, nová DVD s Fedorou 25 a samozřejmě občerstvení. Přednášky budou probíhat v češtině. Pro více informací se můžete podívat na web MojeFedora.cz. Jen připomínám, že tentokrát jsme zavedli

… více »
frantisekz | Komentářů: 0
včera 16:38 | Komunita

Byly zveřejněny videozáznamy přednášek a workshopů z letošní konference OpenAlt konané 5. a 6. listopadu v Brně. K videozáznamům lze přistupovat ze stránky na SuperLectures nebo přes program konference, detaily o vybrané přednášce nebo workshopu a dále kliknutím na ikonku filmového pásu. Celkově bylo zpracováno 65 hodin z 89 přednášek a workshopů.

Ladislav Hagara | Komentářů: 0
včera 11:30 | Komunita

Bylo oznámeno, že bude proveden bezpečnostní audit zdrojových kódů open source softwaru pro implementaci virtuálních privátních sítí OpenVPN. Audit provede Matthew D. Green (blog), uznávaný kryptolog a profesor na Univerzitě Johnse Hopkinse. Auditována bude verze 2.4 (aktuálně RC 1, stabilní verze je 2.3.14). Audit bude financován společností Private Internet Access [reddit].

Ladislav Hagara | Komentářů: 4
včera 06:00 | Komunita

Na YouTube byl publikován Blender Institute Reel 2016, ani ne dvouminutový sestřih z filmů, které vznikly za posledních 10 let díky Blender Institutu. V institutu aktuálně pracují na novém filmu Agent 327. Dění kolem filmu lze sledovat na Blender Cloudu. Videoukázka Agenta 327 z června letošního roku na YouTube.

Ladislav Hagara | Komentářů: 0
včera 01:02 | Zajímavý článek

Minulý týden byly vydány verze 1.2.3 a 1.1.7 webového poštovního klienta Roundcube. V oznámení o vydání bylo zmíněno řešení bezpečnostního problému nalezeného společností RIPS a souvisejícího s voláním funkce mail() v PHP. Tento týden byly zveřejněny podrobnosti. Útočník mohl pomocí speciálně připraveného emailu spustit na serveru libovolný příkaz. Stejně, jak je popsáno v článku Exploit PHP’s mail() to get remote code execution z roku 2014.

Ladislav Hagara | Komentářů: 1
8.12. 16:00 | Nová verze

Byla vydána verze 0.98 svobodného nelineárního video editoru Pitivi. Z novinek lze zmínit například přizpůsobitelné klávesové zkratky. Videoukázka práce s nejnovější verzí Pitivi na YouTube.

Ladislav Hagara | Komentářů: 1
8.12. 15:00 | Zajímavý software

Stop motion je technika animace, při níž je reálný objekt mezi jednotlivými snímky ručně upravován a posouván o malé úseky, tak aby po spojení vyvolala animace dojem spojitosti. Jaký software lze pro stop motion použít na Linuxu? Článek na OMG! Ubuntu! představuje Heron Animation. Ten bohužel podporuje pouze webové kamery. Podpora digitálních zrcadlovek je začleněna například v programu qStopMotion.

Ladislav Hagara | Komentářů: 5
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 808 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: BASH - Výpis příkazu do CL

1.6.2012 19:16 Markus
BASH - Výpis příkazu do CL
Přečteno: 461×
Ahoj všem. Neporadí někdo jak můžu docílit něčeho takového?
Mám soubor menu.sh a po spuštění se mi zobrazí nějaká nabídka která dle výběru provede tohle

echo "cat /var/log/system.log";

Jenže já bych potřeboval aby se cely script v souboru menu.sh ukoncil a zustal v CL jen tento prikaz který když kliknu enter spustim.

cat /var/log/system.log

Poradí někdo?


Řešení dotazu:


Odpovědi

1.6.2012 23:02 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL

Jde to pomocí TIOCSTI ioctl.

Ale ať už se snažíte o cokoli, jsem si téměř jistý, že tohle není vhodný způsob, jak to řešit.

1.6.2012 23:37 Markus
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Tak doporučte jiny/lepsi.. diky
1.6.2012 23:50 chrono
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Prečo ten skript nemôže priamo spustiť ten príkaz?
2.6.2012 00:06 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
To bych musel nejdřív vědět, o co se vlastně snažíte.
2.6.2012 00:19 Markus
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Odpovím společně na oba dva příspěvky

Nemůžu přímo, jelikož jsou to hodně dlouhé příkazy. Snažím se o to, udělat nějaké jako by menu ve kterém bych si vybral potřebný příkaz a ten by se po zvoleni napsal do CL. Ten jednoduše edituji a potvrdím. To je celý.
xkucf03 avatar 2.6.2012 00:26 xkucf03 | skóre: 45 | blog: xkucf03
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
A co kdyby se místo té dodatečné editace to menu.sh zeptalo na parametry (např. cestu k souboru) a z nich sestavilo příkaz a spustilo ho?
Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
2.6.2012 00:35 Markus
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Tak to mám teď ale je to nepouzitelné ;)
xkucf03 avatar 2.6.2012 00:24 xkucf03 | skóre: 45 | blog: xkucf03
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
A co je smyslem? Aby si uživatel mohl ten příkaz doupravit a pak ho teprve odentrovat?

Pokud nestačí BASH (např. jeho Ctrl+R – spouštění příkazů z historie), tak si asi budeš muset udělat nějaký svůj shell (místo toho menu.sh), ve kterém vybereš z nabídky, upravíš a spustíš – místo toho, abys vybral z nabídky v jednom procesu (menu.sh) a pak se ten výsledek snažil nějak nacpat jinému procesu (BASH, ze kterého bylo to menu.sh spuštěno).
Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
2.6.2012 00:38 Markus
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
A co je smyslem? Aby si uživatel mohl ten příkaz doupravit a pak ho teprve odentrovat?
Přesně tak, upravím příkaz a odentruju..
Pokud nestačí BASH (např. jeho Ctrl+R – spouštění příkazů z historie)
CTRL+R není taky žádné vítězství :(
tak si asi budeš muset udělat nějaký svůj shell (místo toho menu.sh), ve kterém vybereš z nabídky, upravíš a spustíš
No ale jak? Na to se ptám od začátku ;)
2.6.2012 02:16 jkhkjhkhj
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Myslim, ze by to nemusel byt problem s klasickou technikou pouzivanou v event-driven systemech:

* v nadrazenem shellu definujes funkci (v .bash_profile), kterou pomoci trap spustis kdyz dostanes signal, ta funkce bude pres promenou, pipu nebo pomocny soubor cist retezec vygenerovany z menu.sh a ten prida pomoci prikazu history do historie

* ve funkci menu.sh se po vygenerpvani retezce nejak ulozi vysledek (promena, pipe nebo soubor) a posle se signal nadrazenemu shellu

Signaly mohou byt bud SIGUSR1, USR2 nebo mozna to pujde primo navazat na exit SIGCHLD (ale myslim, ze to pak bude fungovat u kazde funkce).

Asi nejlepsi zpusob predavani retezcu je pres pipe pomoci funkce mkfifo.

Doufam, ze to tahle nejak muze fungovat. Posilani signalu a predavani promenych mam vyzkousene, ale s historii jsem nikdy moc manipulovat nepotreboval. Kdyz se to dobre napise, tak to pravdepodobne bude fungovat i primo v sh (a nejen v bash/dash).
2.6.2012 10:28 Semo | skóre: 44 | blog: Semo
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
read -p "> " -e -i "echo aaa" cmd
eval "$cmd"
If you hold a Unix shell up to your ear, you can you hear the C.
2.6.2012 11:39 Markus
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Tak jsem zkoušel tohle řešení, vrací to chybu se kterou nevím co dělat.. mám to celý takto

Soubor menu.sh
#!/bin/bash
clear
read -p "> " -e -i "echo /etc/init.d/apache2 restart" cmd
eval "$cmd"
Výsledek
root@srv:/# sh menu.sh
read: 3: Illegal option -e
root@srv:/#
Díky
2.6.2012 12:04 Semo | skóre: 44 | blog: Semo
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Pravdepodobne nemas bash skompilovany s podporou readline, co mi teda pride divne. Alebo mas nejaky prastary bash, alebo bash nie je bash, ale link na nieco ine. Na akom systeme/distribucii sa o to pokusas?

A to "echo" tam asi nechces.
If you hold a Unix shell up to your ear, you can you hear the C.
2.6.2012 12:46 Markus
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Používám Debian 6. A jak ho skompiluji? Díky
4.6.2012 21:05 Zadejte vaše jméno
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Kdyz na debianu, tak nemas nahodou sh jako symlink na dash misto bashe?
2.6.2012 10:56 Ash | skóre: 53
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Nový shell mi připadá sice výborná možnost, ale možná trochu overkill, jako jednodušší možnost bych viděl využití bash completion, navázanou na nějaký univerzální spouštěč (analogie nového shellu), což může být třeba primitivní funkce shellu, která vykoná to, co dostane jako parametry.
_menu_driven_command() {
  local cur="${COMP_WORDS[COMP_CWORD]}"
  local first=${COMP_WORDS[1]}
  local clist="cat tail"
  if [[ $COMP_CWORD -eq 1 ]]; then
    COMPREPLY=($(compgen -W "$clist" -- "$cur"))
  else
    case "$first" in
      cat)
        COMPREPLY="$(kdialog --inputbox "Choose file" "/var/log/messages")"
        ;;
      tail)
        COMPREPLY="$(kdialog --inputbox "Choose file" "/var/log/messages")"
        ;;
    esac
  fi
}

complete -F _menu_driven_command mdc

mdc() {
  eval $@
}
Použití:
bash$ mdc <TAB>
bash$ mdc
cat   tail
[ash@ashnb /dev/pts/7 (2) 10:53 ~]
bash$ mdc tail <TAB>
...následuje GUI dialog...
bash$ mdc tail /var/log/messages
Použitý kdialog by bylo potřeba nahradit nějakým sotisfikovanějším menu dle vašich potřeb, podstatné je, aby na stdout vrátilo výsledný řetězec parametrů, což asi nebude problém.
2.6.2012 11:01 Ash | skóre: 53
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Koukám že to bylo docela jednoduché, samotného mě to překvapilo, vždycky jsem to považoval za blbost (no.. ještě považuji), o kterou nemá cenu se pokoušet :)
2.6.2012 10:59 Kit
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
A nebylo by jednodušší využít příkaz alias, případně upravit .inputrc?

Také by se ta nabídka mohla generovat utilitou find, která by rovnou nabídla vhodné soubory.
2.6.2012 11:59 Markus
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Ještě mě taď napadla taková blbost, nevím jestli je to reálné, že to shell dokáže ale třeba ano. CO kdybych prostě jen úplně obyčejně po vybrání nějaké položku script provedl něco jako CTRL+C na určený obsah a script ukončil?
cl_copy () {
CTRL + C = "/etc/init.d/apache2 restart"
}
Je to možný? Díky

2.6.2012 12:07 Semo | skóre: 44 | blog: Semo
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Pod X-mi je utilitiek, ktore dopkazu operovat s X-selection plno. xcli, xsel, xclipboard atd.
If you hold a Unix shell up to your ear, you can you hear the C.
2.6.2012 12:28 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Především je hned v první odpovědi je zmíněn mechanismus, který umožňuje přesně to, na co se tazatel ptal. Jen si nemyslím, že je dobrý nápad se touto cestou ubírat - viz třeba tento bug. Proto jsem to záměrně nerozepisoval do detailů.
2.6.2012 12:47 Markus
Rozbalit Rozbalit vše Re: BASH - Výpis příkazu do CL
Tak CTRL+C je hloupost, jelikož v CL klávesnicí CTRL+V nic nevložím, jen tohle ^V

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.