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í
×

19.1. 18:55 | Komunita

NHSbuntu (Joinup, prezentace) měla být z Ubuntu vycházející linuxová distribuce přizpůsobená pro potřeby britské Národní zdravotní služby (NHS). NHS se název nelíbil, nejednalo se o oficiální projekt NHS, a proto bylo NHSbuntu v září loňského roku přejmenováno na NHoS. Vývojáři NHoS tento týden oznámili, že NHS se nelíbí ani název NHoS a už nemají sílu na další přejmenování a pokračování v projektu. Dodávají, že několik jednání s vedením

… více »
Ladislav Hagara | Komentářů: 2
19.1. 18:44 | Pozvánky

Koncem ledna, 29. 1. 2018 od 17 do 20 hodin se v Akademii CZ.NIC uskuteční večer s Turrisem.

Co bude na programu?… více »
Miška | Komentářů: 5
19.1. 18:33 | Pozvánky

Na tri dni sa hlavné mesto Slovenska po tretíkrát zmení na miesto s najväčšou koncentráciou profesionálnych programátorov, systémových administrátorov, učiteľov informatiky aj technologických nadšencov. Hlavným lákadlom bude konferencia PyCon SK 2018, určená záujemcom o Python, jeden z najpopulárnejších programovacích jazykov na svete.

… více »
RicCo386 | Komentářů: 1
19.1. 18:22 | Pozvánky

Letošní ročník konference Prague PostgreSQL Developer Day se koná ve dnech 14. 2. a 15. 2. 2018. Zveřejněn byl program s přednáškami a školeními. Otevřena byla také registrace na konferenci.

TomasVondra | Komentářů: 0
19.1. 11:33 | Komunita

Společnost Canonical stojící za linuxovou distribucí Ubuntu oznámila dostupnost nástroje pro týmovou spolupráci Slack (Wikipedie) ve formátu snap. Instalovat jej lze ze Snapcraftu. Slack pro Linux je dostupný také ve formátu klasických balíčků pro Ubuntu a Fedoru.

Ladislav Hagara | Komentářů: 10
18.1. 17:33 | Nová verze

Po roce vývoje od vydání verze 2.0 a 6 000 změnách byla vydána nová stabilní verze 3.0 softwaru, který vytváří aplikační rozhraní umožňující chod aplikací pro Microsoft Windows také pod GNU/Linuxem, Wine (Wikipedie). Z novinek lze zdůraznit například podporu Direct3D 10 a 11. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 14
18.1. 13:44 | Zajímavý projekt

V říjnu loňského roku úspěšně skončila kampaň na podporu chytrého telefonu Librem 5, jenž by měl respektovat bezpečnost, svobodu a soukromí uživatelů. Společnost Purism informuje o aktuálním vývoji tohoto telefonu. Místo plánovaného SoC i.MX6 by měl být použit úspornější i.MX8.

Ladislav Hagara | Komentářů: 4
18.1. 12:33 | Zajímavý projekt

V květnu loňského roku měl na YouTube premiéru krátký animovaný film Agent 327: Operation Barbershop. Blender Animation Studio včera zveřejnilo alternativní konec tohoto filmu.

Ladislav Hagara | Komentářů: 0
18.1. 05:55 | Bezpečnostní upozornění

Společnost Oracle vydala čtvrtletní bezpečnostní aktualizaci svých softwarových produktů (CPU, Critical Patch Update). Opraveno bylo celkově 237 bezpečnostních chyb. V Oracle Java SE je například opraveno 21 bezpečnostních chyb. Vzdáleně zneužitelných bez autentizace je 18 z nich. V Oracle MySQL je opraveno 25 bezpečnostních chyb. Vzdáleně zneužitelných bez autentizace je 6 z nich.

Ladislav Hagara | Komentářů: 0
17.1. 20:55 | Komunita

Linux ve VirtualBoxu nebude potřebovat Přídavky pro hosta (Guest Additions). Budou součástí linuxového jádra. Ovladač vboxguest by se měl dostat do Linuxu 4.16. Ovladač vboxsf by měl následovat.

Ladislav Hagara | Komentářů: 27
Jak se vás potenciálně dotkne trend odstraňování analogového audio konektoru typu 3,5mm jack z „chytrých telefonů“?
 (7%)
 (1%)
 (1%)
 (1%)
 (77%)
 (13%)
Celkem 1352 hlasů
 Komentářů: 53, poslední 17.1. 16:55
    Rozcestník

    Dotaz: BASH: jak na výpis příkazu, který se bude provádět

    svido avatar 5.3.2015 08:58 svido | skóre: 28
    BASH: jak na výpis příkazu, který se bude provádět
    Přečteno: 388×
    Ahoj, mám skript, který automatizovaně pracuje s MKV kontejnery a upravuje je podle mých požadavků. Rád bych při zapnutém verbose módu viděl i jednotlivé prováděné příkazy, ale nějak se mi to nedaří...
    CMD_EVAL="$APPLICATION_MKVINFO $ACTUAL_PROCESSED_DIRECTORY/$SOURCE_FILE | grep -B4 'Track type: video' | grep 'Track number' | awk '{print \$5}'"
    logCommand $CMD_EVAL
    VIDEO_TRACK_NUMBER=$(eval $CMD_EVAL)
    Do proměnné VIDEO_TRACK_NUMBER by se mělo uložit číslo ID video stopy, ale něuloží.

    Zápis pomocí evalu používám hlavně kvůli skládání příkazu - pokud má MKV např. více audio stop, generuje se příkaz dynamicky.

    Děkuji za nápady :-)

    Odpovědi

    5.3.2015 09:12 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    bash -x
    5.3.2015 09:18 NN
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    Verbosity prikazu mkvinfo? Jednotlive provadene prikazy shellu?
    svido avatar 5.3.2015 09:48 svido | skóre: 28
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    nene, verbosity myslím pro můj skript. Standardně si vypisuji jen některé informace, ale pokud pustím skript s verbosity, mám rozšířené informace a v tomto výpisu bych rád měl i příkazy které se pustí.

    Jinak samotné spuštění příkazů ve skriptu má potlařený výstup a jen kontroluji návratovou hodnotu. Nepoužívám jen mkvinfo, ale iconv, enkódování atd.
    5.3.2015 11:12 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    Vždyť ti říkám - bash -x

    Do shebangu na prvním řádku skriptu přidej k bashi parametr -x
    svido avatar 5.3.2015 22:52 svido | skóre: 28
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    nerozumíš mi, nechci tracovat bash, ale můj vlastní skript, kdy si verbose mode řídím příznakem a protože dost příkazů, které skript spuští se generují dynamicky, rád bych při zapnutém ukecaném řežimu ty příkazy viděl. O to mi jde
    5.3.2015 23:22 GeorgeWH | skóre: 36
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    if [ "$debug" ]; then
       echo "prikaz --parameter --parameter..."
    fi
    
    prikaz --parameter --parameter...
    6.3.2015 07:14 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    Asi opravdu nerozumím. V tom skriptu tím parametrem řekneš bashi, aby ti vypisoval, co dělá, tedy i co konkrétně spouští. Přesně právě v situacích, kdy chceš vidět, co se opravdu spouští. Vyzkoušel sis to?
    svido avatar 6.3.2015 13:17 svido | skóre: 28
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    ano, znám to. Když dám #!/bin/bash -x, dostanu sice verbose mode, ale pro bash, který mne moc nezajímá. Vidím toto:
    hurvajs@htpc ~ $ ~/bin/mkvmerger.sh --verbose                                                                                              
    + VERSION=0.1-alpha1                                                                                                                      
    ++ basename /home/hurvajs/bin/mkvmerger.sh                                                                                                
    + SCRIPT_NAME=mkvmerger.sh                                                                                                                
    + PREFIX_VERBOSE_MESSAGE='---> '                                                                                                          
    + PREFIX_MESSAGE='  '                                                                                                                     
    + PREFIX_COMMAND_VERBOSE_MESSAGE='---> CMD - '                                                                                            
    + LOCK_FILE=mkvmerger.sh.lock                                                                                                             
    + SCRIPT_CONFIGURATION_FILE=mkvmerger.conf                                                                                                
    + DATE_FORMAT='%Y/%m/%d %H:%M:%S'                                                                                                         
    + SEPARATOR_PROCESSED_FOLDER='\n----------------------------------------------------------------------------------'                        
    ++ which mkvinfo                                                                                                                           
    + APPLICATION_MKVINFO=/usr/bin/mkvinfo                                                                                                      
    ++ which mkvextract                                                                                                                         
    + APPLICATION_MKVEXTRACT=/usr/bin/mkvextract                                                                                                
    ++ which mkvmerge                                                                                                                           
    + APPLICATION_MKVMERGE=/usr/bin/mkvmerge                                                                                                      
    ++ which iconv                                                                                                                                
    + APPLICATION_ICONV=/usr/bin/iconv                                                                                                                
    ++ which enca                                                                                                                                     
    + APPLICATION_ENCA=/usr/bin/enca                                                                                                                  
    + AUDIO_POSSIBLE_LANGUAGE=('eng' 'cze')                                                                                                           
    + AUDIO_PREFERRED=eng                                                                                                                               
    + SUBTITLE_POSSIBLE_LANGUAGE=('cze' 'eng')                                                                                                            
    + SUBTITLE_PREFERRED=cze                                                                                                                              
    + SUBTITLE_ENCODING=utf-8                                                                                                                                                              
    + FLAG_VERBOSE_MODE=0                                                                                                                                                                  
    + FLAG_NO_NEW_LINE=0                                                                                                                                                                   
    + DEBUG_MESSAGE_VIDEO=                                                                                                                                                                
    + DEBUG_MESSAGE_AUDIO=                                                                                                                                                                
    + DEBUG_MESSAGE_SUBTITLE=                                                                                                                                                                 
    + DIRECTORY_INPUT=/home/hurvajs/Source/new_processed_movies/uncorrected                                                                                                                        
    + DIRECTORY_OUTPUT=/home/hurvajs/Source/new_processed_movies/corrected
    + TRACKS_TO_EXTRACT_LIST=
    + TRACKS_TO_EXTRACT_COUNT=0
    + IFS='
    '
    + COLOR_ESCAPE_SEQUENCE='\033['
    + COLOR_OFF='\033[0m'
    + COLOR_MOVIE_TITLE='\033[4;1;34m'
    + COLOR_COMMAND='\033[44m'
    + COLOR_ERROR='\033[1;31m'
    + COLOR_WARNING='\033[1;33m'
    + COLOR_SUCCESS='\033[1;32m'
    ++ date '+%Y/%m/%d %H:%M:%S'
    + EVENT_DATE='2015/03/06 13:01:36'
    + trap '{ rm -rf /home/hurvajs/Source/new_processed_movies/uncorrected/mkvmerger.sh.lock; exit 255; }' EXIT
    + ARGUMENTS_SHORT=vhcdV
    + ARGUMENTS_LONG=version,help,help-configuration,debug,verbose
    ++ getopt -o vhcdV:: --long version,help,help-configuration,debug,verbose:: -n mkvmerger.sh -- --verbose
    ...
    ...
    
    což je brutálně ukecaný a zbytečný...

    Zkusím to popsat, když pustím můj skript s --verbose zapne se ukecaný režim, kde bych rád vypisoval i příkazy, které pouštím ve skriptu, tj. mkvinfo, enca, iconv atd. které mi vytáhnou informace ze zpracovávaného MKV kontejneru, tak abych mohl kontejner extrahovat a pak složit dle svých požadavků (ENG audio, ENG + CZE titulky, pojmenování kontejneru atd).

    Aktuálně mi dělá problém toto (a na to jsem se i ptal):
    # internal video tracks
    CMD_EVAL="$APPLICATION_MKVINFO $ACTUAL_PROCESSED_DIRECTORY/$SOURCE_FILE | grep -B4 'Track type: video' | grep 'Track number' | awk '{print $5}'"
    
    # tady se zobrazí příkaz
    logCommand $CMD_EVAL
    
    # tady by se měl pustit a do proměnné VIDEO_TRACK_NUMBER naplnit ID audio stopy
    VIDEO_TRACK_NUMBER=$(eval "$CMD_EVAL")
    
    Problém je u toho awk. Abych docílil toho, že se mi zobrazí správně, musím escapovat $5, tj. \$5. Což je pak zase špatně pro vlastní eval.

    6.3.2015 14:41 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    Nemusíte to mít zapnuté pro celý skript, lze to podle potřeby zapínat ("set -x") a vypínat ("set +x").
    6.3.2015 14:43 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    To jsem ani nevěděl. Super, díky za tip :-)
    svido avatar 6.3.2015 17:28 svido | skóre: 28
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    tak to jsem také nevěděl... Hned zkusím. Díky
    7.3.2015 22:04 pc2005 | skóre: 34 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    Ten skript selže když bude nastavenej jinej jazyk prostředí (já mám jména položek česky). Jinak ten $5 musí přežít až do awku ne? Takže musí být escapován proti přiřazení do stringu a pak evalem. Jinak poslední grep a awk by šel nahradit sedem (i když lomítka sedu v evalu jsou na tom podobně jako $5 v awku :-D).
    5.3.2015 10:59 chrono
    Rozbalit Rozbalit vše Re: BASH: jak na výpis příkazu, který se bude provádět
    Mimochodom pomocou programu mediainfo sa dá získať číslo stopy o niečo jednoduchšie:
    mediainfo --Output='Video;%ID%' file.mkv
    (ak súbor obsahuje viac video stôp, bude potrebné upraviť tú šablónu pre parameter Output)

    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.