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í
×
    dnes 01:44 | Komunita

    Spotify prostřednictvím svého FOSS fondu rozdělilo 70 000 eur mezi tři open source projekty: FFmpeg obdržel 30 000 eur, Mock Service Worker (MSW) obdržel 15 000 eur a Xiph.Org Foundation obdržela 25 000 eur.

    Ladislav Hagara | Komentářů: 1
    včera 18:11 | Zajímavý software

    Nazdar! je open source počítačová hra běžící také na Linuxu. Zdrojové kódy jsou k dispozici na GitHubu. Autorem je Michal Škoula.

    Ladislav Hagara | Komentářů: 0
    včera 16:55 | Nová verze

    Po více než třech letech od vydání verze 1.4.0 byla vydána nová verze 1.5.0 správce balíčků GNU Guix a na něm postavené stejnojmenné distribuci GNU Guix. S init systémem a správcem služeb GNU Shepherd. S experimentální podporou jádra GNU Hurd. Na vývoji se podílelo 744 vývojářů. Přibylo 12 525 nových balíčků. Jejich aktuální počet je 30 011. Aktualizována byla také dokumentace.

    Ladislav Hagara | Komentářů: 4
    včera 15:44 | Zajímavý software

    Na adrese gravit.huan.cz se objevila prezentace minimalistického redakčního systému GravIT. CMS je napsaný ve FastAPI a charakterizuje se především rychlým načítáním a jednoduchým ukládáním obsahu do textových souborů se syntaxí Markdown a YAML místo klasické databáze. GravIT cílí na uživatele, kteří preferují CMS s nízkými nároky, snadným verzováním (např. přes Git) a možností jednoduchého rozšiřování pomocí modulů. Redakční

    … více »
    2012 | Komentářů: 0
    včera 12:55 | Zajímavý software

    Tým Qwen (Alibaba Cloud) uvolnil jako open-source své modely Qwen3‑TTS pro převádění textu na řeč. Sada obsahuje modely VoiceDesign (tvorba hlasu dle popisu), CustomVoice (stylizace) a Base (klonování hlasu). Modely podporují syntézu deseti různých jazyků (čeština a slovenština chybí). Stránka projektu na GitHubu, natrénované modely jsou dostupné na Hugging Face. Distribuováno pod licencí Apache‑2.0.

    NUKE GAZA! 🎆 | Komentářů: 0
    včera 01:11 | Nová verze

    Svobodný citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 8. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    22.1. 16:55 | Nová verze

    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.

    Ladislav Hagara | Komentářů: 0
    22.1. 14:00 | Komunita

    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.

    Ladislav Hagara | Komentářů: 8
    22.1. 11:00 | IT novinky

    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ů.

    Ladislav Hagara | Komentářů: 2
    22.1. 10:22 | Zajímavý software

    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.

    Ladislav Hagara | Komentářů: 6
    Které desktopové prostředí na Linuxu používáte?
     (17%)
     (6%)
     (0%)
     (10%)
     (21%)
     (3%)
     (5%)
     (2%)
     (11%)
     (35%)
    Celkem 584 hlasů
     Komentářů: 17, poslední 22.1. 15:24
    Rozcestník

    Dotaz: Jak načíst proměnnou funkce obsahující \

    19.10.2021 16:19 maraou
    Jak načíst proměnnou funkce obsahující \
    Přečteno: 576×
    Ahoj, Napsal jsem si BASH skriptík, který překládá adresy windows na linux

    např: c 'F:\film\' provede cd /data/film

    Problém je, že je otravné neustále psát uvozovky před a za cestu. Existuje nějaký způsob jak do proměnné načíst znak \ a ignorovat jeho escapovací funkci? Pak bych mohl udělat záměnu \ za \\ a už by vše fungovalo.

    Díky, O.


    Řešení dotazu:


    Odpovědi

    19.10.2021 17:06 X
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Staci promennou obalit do uvozovek:
    #!/bin/bash 
    
    echo "$1"
    
    Kdyz zadam na vstupu '\r\n' nic se neinterpertuje..
    19.10.2021 19:12 maraou
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Oh děkuji.
    19.10.2021 20:13 maraou
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Akorat teda mi to nefunguje... co s tim muze byt?

    zkouskamikrofonu( )

    {

    echo "$1"

    }

    maraou@u5.lan> zkouskamikrofonu F:\tmp\test

    F:tmptest

    19.10.2021 20:41 Peter Golis | skóre: 65 | blog: Bežné záležitosti | Bratislava
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    V otázke to bolo s úvodzovkami:
    $ zkouskamikrofonu  'F:\film\' 
    F:\film\
    
    19.10.2021 21:32 maraou
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    No právě, ‘s uvozovkami ‘ to samozřejmě funguje. Otázka je jak to udělat bez nich. Máme heterogení prostředí ve firmě, psát to každý den 50x prosťe nebaví.
    xkucf03 avatar 19.10.2021 21:36 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \

    A co takhle nepoužívat retardované OS, které si jako oddělovač adresářů zvolily tradiční escapovací znak (zpětné lomítko)? Nebo si do nich aspoň nainstalovat normální Shell (Bash atd.) a psát cesty s normálním lomítkem (stejně tak to funguje i třeba v Javě – i na těch retardovaných OS).

    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-DK, Relational pipes
    19.10.2021 21:58 maraou
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    No ve firmě je 250 zaměstnanců a jenom naše oddělení (30 lidí) používá Linux... není nic snazšího všem ostatním vysvětlit, že je chyba na jejich straně... nota bene když jejich základní nástroje existují jenom pro windows a je to industry standard pro automobilový průmysl.
    19.10.2021 22:10 Peter Golis | skóre: 65 | blog: Bežné záležitosti | Bratislava
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Pokiaľ je firma fyzicky limitovaná SW ktorý funguje len pre jeden OS, tak nerozumiem akú rolu v tom hrá druhý OS. Ale ani ma to nezaujíma.

    Tie Windowsové programy sa pod Linuxom možno spustia pomocou programu Wine, a tam sa dá namapovať ten prípojný bod /data ako disk F. Akurát nerozumiem akú rolu v tom hrá bash.
    19.10.2021 22:22 maraou
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Unix/Linux je historicky industry standard pro výpočty. Je to jen jedno oddělení. Ostatní jedou na windows (konstrukce, design, testing). Cílem otázky bylo zjednodušit si práci... nejde, nejde nevadí. Hezký den.
    xkucf03 avatar 19.10.2021 22:32 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \

    Díval jsem se, jestli nejde tu interpretaci zpětného lomítka v Bashi vypnout, ale přijde mi, že nejde. Třeba by to v jiném shellu šlo, nevím. Případně si takovou volbu do Bashe dopsat – to by nebyl velký problém. Akorát jde o to, že tím ten shell zmrzačíš a přestanou v něm fungovat věci, na které jsou lidé zvyklí a které všude jinde fungují (\t, \n, \ , \\, \), \', \" atd.)

    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-DK, Relational pipes
    20.10.2021 14:36 Peter Golis | skóre: 65 | blog: Bežné záležitosti | Bratislava
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Pokiaľ si nevie jedno oddelenie o počte 30 ľudí zvyknúť že zdieľaný disk F: je pripojený v /data/, a Windows priečinok F:\film\ majú tým pádom dostupný v /data/film/, tak bude treba upraviť použitý interpreter príkazov aby neeskejpoval lomítka v cieľovom priečinku (ak je zo zadaného rozsahu), ale ho rovno zamenil podľa požiadavky. A nielen interpreter príkazov, ale aj grafického správcu súborov keďže to budú zadávať aj tam alebo rovno klikať na URI file://F:/film/návod-na-použitie.asf

    Toto už ani alias nevyrieši, a problém sa rozrastie do gigantických rozmerov.

    Iné by to bolo, keby sa jednalo o textový zoznam súborov na spracovanie, ten by sa dal prehnať cez stream editor, zmeniť absolútnu cestu a poprípade aj dohľadať či je súbor dostupný pod malými/veľkými alebo zmiešanými písmenami v názve. Ak táto posledná vec nie je prepnutá v Sambe (myslím že sa jedná o voľbu nocase alebo ignorecase v príkaze mount.cifs). v prípade URI smb: si už nespomeniem.
    20.10.2021 07:52 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Používať / ako oddeľovač sa dá aj na Windowsoch.
    Řešení 1× (Вherzet)
    19.10.2021 23:18 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Nápis si vlastný shell alebo modifikuj existujúci. ;)
    debian.plus@protonmail.com
    xkucf03 avatar 19.10.2021 20:43 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Interpretaci toho \t udělá ještě původní shell, ze kterého tu funkci voláš. Musíš to dát do uvozovek nebo apostrofů tam nebo zdvojit \\ (escapovat).
    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-DK, Relational pipes
    21.10.2021 13:36 ttttttttttt
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Šlo by v tom skriptu udělat reverzní transformaci k tomu, co udělal shell? Převést tab zpět na '/t' atp.?

    Narazím na to, že nedokážu poznat, jestli nebyl tabulátor součástí názvu souboru, ale tam si můžu říct, že to nedovolím. Má to i další problémy (kromě toho, že je to rovnák na ohýbák)? Nemyslím si, že to je dobrý nápad, přemýšlím jen, jestli by to bylo možné.
    xxxs avatar 24.10.2021 09:10 xxxs | skóre: 25 | blog: vetvicky
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    to mozno nepotrebujes, lebo tab v nazve suboru vo win ich uzivatelia bezne nevytvoria.
    Jendа avatar 20.10.2021 06:05 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Hm, to asi nejde, pokud to nějaký shell neumí vypnout. Navrhoval bych:
    • Pokud to tam pastuješ ze schránky, udělal bych si wrapovací skript (xclip -out | nějaká_transformace | xclip -in, případně to rovnou pastnout -- což nevím jak se dělá, já to dělám pomocí sleep 0.2; xdotool click 2)
    • Zjistit, jak složité by bylo změnit/hooknout pastovací funkci tvého terminálu.
    • Patchnout bash, aby věci z promptu neescapoval.
    Pavel 'TIGER' Růžička avatar 19.10.2021 23:35 Pavel 'TIGER' Růžička | skóre: 54
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    A co tou konverzí adres provádíš? Většinou je síť navržena tak, aby se člověk ke zdroji dostal syntaxí svého systému.
    Řešení 1× (Вherzet)
    20.10.2021 00:46 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Robiš v BASH vo Windowse?
    debian.plus@protonmail.com
    20.10.2021 19:00 X
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    Tak uz to mam. Read ma prepinac, ktery lomitko ignoruje, takze staci nacitat skriptem:
    #!/bin/bash
    
    echo -n "Adresar: "; read -r FOO
    echo "$FOO"
    
    
    xkucf03 avatar 20.10.2021 19:10 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \

    To ale čte z terminálu / standardního vstupu, ne z parametru příkazu/funkce. Pokud jsem tazatele pochopil schválně, tak by to chtěl používat takhle:

    mojeFunkce() { echo -n "Adresar: "; read -r FOO; echo "$FOO"; }
    mojeFunkce aaa\bbb\ccc

    ale to parametr ignoruje a čte to ze STDIN.

    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-DK, Relational pipes
    k3dAR avatar 21.10.2021 02:43 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: Jak načíst proměnnou funkce obsahující \
    problem neni s promenou, ale v zadani parametru scriptu v shellu kdyz ho nedas do uvozovek...
    sice v dotazu pises nacist promenou, ale dale pak pises pousteni skriptu s parametrem cesty bez uvozovek...
    takze neni uplne jasne co, jak a proc vlastne chces, jak/kde chces zadavat cestu/cesty a jak/kde se ma predat vystup prevedene cesty...
    tak aspon k zamysleni, priklad jak prevest win cesty uvedene v souboru:
    #!/bin/bash
    
    preved(){
        # prevod lomitek
        lin_cesta="$(echo "$2" | sed 's#\\#/#g')"
        # prevod F:/film na /data/film, 
        lin_cesta="$(echo "${lin_cesta}" | sed 's#^f:/film#/data/film#I')"
        
        # zobrazeni a pridani do souboru "vstupni nazev".prevedene
        echo "${lin_cesta}" | tee -a "${1}.prevedene"
    }
    
    # smazani vystupniho souboru pri spusteni
    rm "${1}.prevedene"
    
    # nacitani radku z vstupniho souboru zadaneho jako parametr skriptu
    while read -r line; do
        preved "${1}" "${line}"
    done < "${1}"
    
    porad nemam telo, ale uz mam hlavu... nobody

    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.