abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 10:22 | Nová verze

    Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 19:55 | IT novinky

    Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Nová verze

    Byla vydána nová verze 14.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 12:55 | Zajímavý software

    Společnost Kaspersky vydala svůj bezplatný Virus Removal Tool (KVRT) také pro Linux.

    Ladislav Hagara | Komentářů: 6
    včera 12:33 | Nová verze

    Grafický editor dokumentů LyX, založený na TeXu, byl vydán ve verzi 2.4.0 shrnující změny za šest let vývoje. Novinky zahrnují podporu Unicode jako výchozí, export do ePub či DocBook 5 a velké množství vylepšení uživatelského rozhraní a prvků editoru samotného (např. rovnic, tabulek, citací).

    Fluttershy, yay! | Komentářů: 3
    včera 12:00 | Nová verze

    Byla vydána (𝕏) nová verze 7.0 LTS open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.

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

    Organizace Apache Software Foundation (ASF) vydala verzi 22 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 2
    3.6. 17:00 | IT novinky

    Společnost AMD na veletrhu Computex 2024 představila (YouTube) mimo jiné nové série procesorů pro desktopy AMD Ryzen 9000 a notebooky AMD Ryzen AI 300.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

    Dotaz: Jak ulozit sourcnute soubory do jednoho?

    30.9.2021 14:36 leos
    Jak ulozit sourcnute soubory do jednoho?
    Přečteno: 433×
    Dobry den. Mam bash script ktery do sebe nacita jine soubory s bash scripty. Poradili by jste mi jak nacist vsechny tyto soubory do jedineho souboru? Predem dekuji.

    Odpovědi

    30.9.2021 15:01 X
    Rozbalit Rozbalit vše Re: Jak ulozit sourcnute soubory do jednoho?
    Coze? Muzes to preformulavat srozumitelneji?
    30.9.2021 15:59 leos
    Rozbalit Rozbalit vše Re: Jak ulozit sourcnute soubory do jednoho?
    Spustim soubor ktery obsahuje prikaz source nebo . pro nacteni dalsich scriptu/souboru. Potreboval bych vsechny tyto soubory nacist do toho hlavniho scriptu a ulozit do jednoho souboru. Ted mam program ktery obsahuje > 150 souboru a chci mit pouze jeden.
    Jendа avatar 30.9.2021 16:37 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak ulozit sourcnute soubory do jednoho?
    Jediné skutečně funkční řešení bude nějak si hooknout source/. aby zalogovala, co načítá, případně sledovat, co se načítá, přes strace. A to kvůli tomu, že ten program se na základě načtených souborů může rozhodovat, jaké další bude načítat - takže to nejde vyhodnotit staticky.
    30.9.2021 17:21 leos
    Rozbalit Rozbalit vše Re: Jak ulozit sourcnute soubory do jednoho?
    Co znamena "hooknout source/"? Muzes mi tu tvou myslenku trochu vice priblizit? Dekuji.
    Jendа avatar 30.9.2021 19:04 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak ulozit sourcnute soubory do jednoho?
    Udělat, aby daná funkce při svém zavolání spustila svůj kód a až pak se vykonala. Podle konkrétního případu na který koukáš by mohlo jít například definovat funkci source2 a všechny výskyty source v původním zdrojáku nahradit za source2. Kdyby to nešlo, tak by sis třeba mohl patchnout bash, což je opruz. Co z toho bude potřeba udělat záleží na tom, jaká konkrétně je tvoje situace a jestli stačí nedokonalé jednoduché řešení.
    Gréta avatar 1.10.2021 12:29 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Jak ulozit sourcnute soubory do jednoho?

    prolízt a naparsovat :O :O

    hóóóóóóóódně jednoduchý py spojovadlo *.sh souborů :O :O

    #!/usr/bin/env python3
    
    # TODO: nehlídá to dělání 'cd'!!!!!!!!!
    # taky neinterpretruje proměný kdyby třeba byly strčený do názvu tý cestičky ke spriptu!!!!! :O :O
    def radek_obsahuje_import(radek):
        kusy = radek.split(" ")
        if len(kusy) < 2:
            return None
        if kusy[0] == "source" or kusy[0] == ".":
            return kusy[1].strip()
    
        return None
    
    # rekurzivně prolezem soubor a natáhnem všecky bashovský importy
    def zpracovat_soubor(nazev_souboru):
        vystup = []
        vstup_radky = []
    
        with open(nazev_souboru, "r") as soubor:
            vstup_radky = soubor.readlines()
            soubor.close()
    
        for radek in vstup_radky:
            imp = radek_obsahuje_import(radek)
            if imp is not None:
                print(f"importuju soubor: {imp}")
                obsah_dalsiho_souboru = zpracovat_soubor(imp)
                print(obsah_dalsiho_souboru)
    
                # odstranění shebangu (by asi jako stačilo zahazovat dycky prvni radek jestli je dycky nazacatku :O :O)
                # možná bude potřebovat naparsovat další veci různý jako stejný názvy různejch fcí etc :O :O
                for r in obsah_dalsiho_souboru:
                    if "#!" in r:
                        obsah_dalsiho_souboru.remove(r)
                        break
    
                vystup += obsah_dalsiho_souboru
            else:
                print(radek)
                vystup.append(radek)
    
        return vystup
    
    
    if __name__ == "__main__":
    
        vstupni_soubor = "vstup.sh"
        vystupni_soubor = "velikatatatatatanskej_vystupni_skript.sh"
    
        with open(vystupni_soubor, "w") as soubor:
            vystup = zpracovat_soubor(vstupni_soubor)
            if vystup is not None:
                soubor.writelines(vystup)
            soubor.close()
            print("hotovo!!!!!!!!!!!!!!!!!!!!!!!!!!!")
    

    dodělej si sám :D

    Jendа avatar 1.10.2021 17:11 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak ulozit sourcnute soubory do jednoho?
    To je současně strašně komplikované a současně to přestane fungovat jakmile bude source v podmínce, která se nevykoná, nebo se bude dělat source $proměnná, která se uvnitř kódu nějak vypočítala. V takových případech neexistuje jiná možnost, než to spustit a sledovat - můžete si zkusit ukázat, že kdyby se to umělo rozhodovat staticky, tak lze takovým programem řešit halting problem :-).
    Gréta avatar 3.10.2021 19:20 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Jak ulozit sourcnute soubory do jednoho?

    nj neni to nic supr :D ale nevíme jak moc složitý ty jeho skripty sou je možný že jestli toje nějaká jednoduchá lepenina by mu to mohlo takle stačit :D

    u toho hooknutí source by mu to taky teroreticky nemuselo nějakou podmínku/proměnou minout podle vokolností různejch + tim 'načíst do jednoho souboru' asi jako op myslel sloučit ty skripty do jedno víc věčího než jakoby jenom vypsat dosouboru  :O :O

    Ruža Becelin avatar 5.10.2021 14:38 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
    Rozbalit Rozbalit vše Re: Jak ulozit sourcnute soubory do jednoho?
    Kompletne to prepsat...

    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.