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 21:22 | Nová verze

    Bylo vydáno Eclipse IDE 2025-09 aneb Eclipse 4.37. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    dnes 18:22 | IT novinky

    T-Mobile od 15. září zpřístupňuje RCS (Rich Communication Services) zprávy i pro iPhone.

    Ladislav Hagara | Komentářů: 1
    dnes 13:22 | IT novinky

    Společnost ARM představila platformu Arm Lumex s Arm C1 CPU Cluster a Arm Mali G1-Ultra GPU pro vlajkové chytré telefony a počítače nové generace.

    Ladislav Hagara | Komentářů: 0
    dnes 05:44 | Nová verze

    Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 17.0. Přidáno bylo 4 803 nových znaků. Celkově jich je 159 801. Přibylo 7 nových Emoji.

    Ladislav Hagara | Komentářů: 0
    včera 21:00 | IT novinky Ladislav Hagara | Komentářů: 10
    včera 18:33 | Nová verze

    Realtimová strategie Warzone 2100 (Wikipedie) byla vydána ve verzi 4.6.0. Podrobný přehled novinek, změn a oprav v ChangeLogu na GitHubu. Nejnovější verzi Warzone 2100 lze již instalovat také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 1
    včera 12:22 | IT novinky

    Polské vývojářské studio CD Projekt Red publikovalo na Printables.com 3D modely z počítačové hry Cyberpunk 2077.

    Ladislav Hagara | Komentářů: 1
    včera 11:44 | Pozvánky

    Organizátoři konference LinuxDays 2025 vydali program a zároveň otevřeli registrace. Akce se uskuteční 4. a 5. října na FIT ČVUT v pražských Dejvicích, kde vás čekají přednášky, workshopy, stánky a spousta šikovných lidí. Vstup na akci je zdarma.

    Petr Krčmář | Komentářů: 7
    8.9. 22:00 | IT novinky

    Uživatelé komunikátoru Signal si mohou svá data přímo v Signalu bezpečně zálohovat a v případě rozbití nebo ztráty telefonu následně na novém telefonu obnovit. Zálohování posledních 45 dnů je zdarma. Nad 45 dnů je zpoplatněno částkou 1,99 dolaru měsíčně.

    Ladislav Hagara | Komentářů: 0
    8.9. 18:44 | Zajímavý článek

    Server Groklaw, zaměřený na kauzy jako právní spory SCO týkající se Linuxu, skončil před 12 lety, resp. doména stále existuje, ale web obsahuje spam propagující hazardní hry. LWN.net proto v úvodníku připomíná důležitost zachovávání komunitních zdrojů a upozorňuje, že Internet Archive je také jen jeden.

    🇵🇸 | Komentářů: 27
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (3%)
     (4%)
     (2%)
    Celkem 160 hlasů
     Komentářů: 12, poslední dnes 13:00
    Rozcestník

    Dotaz: Problém s cestou která obsahuje mezeru a je uložená v proměnné

    1.3.2020 19:52 jj
    Problém s cestou která obsahuje mezeru a je uložená v proměnné
    Přečteno: 817×
    Ahoj všichni, ;-)

    jak můžu zavolat/spustit prosím jiný script z python scriptu když je v cestě mezera a ta cesta je v proměnné?

    Zkoušel jsem kde co i třeba tohle
    os.system(path)
    subprocess.call(path, shell=True)

    Díky za pomoc.

    Řešení dotazu:


    Odpovědi

    Gréta avatar 1.3.2020 20:20 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné

    v linuxu je potřeba mezeru escapovat to jako znamená nahradit ' ' timhletim '\ ' aby ji viděl jako znak jednoho toho samýho řetězce a ne jakoby dva různý :O ;D

    de to udělat takhle nahrazením znaků ' ' znakama '\ ' ale asi bude existovat i nějakej lepší způsob si myslim ale nevim. tohleto funguje

    import subprocess
    import os
    
    path="./nova slozka/skript.sh"
    path=path.replace(" ","\ ")
    subprocess.call(path, shell=True)
    
    
    1.3.2020 21:08 jj
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    Díky, v Linuxu to jde ale ve Windows mi to nefunguje. Potřeboval bych to funkční pro obě Linux i Windows
    Gréta avatar 1.3.2020 22:04 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné

    mi fungovalo udělat z tý windowsí cesty raw string hele

    jsem to ale testovala jen pod win7 tak nevim jestli se to jako bude u vyších verzí chovat stejně tak pozor :O :O

    import subprocess
    import os
     
    path=r"C:\Users\Gréta\nova slozka\skript.bat"
    subprocess.call(path, shell=True)
    
    1.3.2020 22:25 jj
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    Ta moje proměnná 'path' se skládá ze spousta proměnných. které teprve naplní stringem tu proměnnou 'path'
    path = path_1+"\\"+path_2+"\\"+"\\".join(arr_a)+"\\"+arr_b[23]
    tak to mám použít takto?
    subprocess.call(r'path', shell=True)
    Díky
    Gréta avatar 1.3.2020 22:57 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné

    to fungovat nebude tam jakoby deklaruješ novej string o obsahu "path"

    ale když už cestu sestavuješ takle ručně nepoběží ti to uplně normálně takle i s tou mezerou pod win??

    path="C:\\Users\\Gréta\\nova slozka\\skript.bat"
    subprocess.call(path, shell=True)
    
    1.3.2020 23:01 jj
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    Nepoběží :-(, jelikož hledá místo souboru
    C:\\Users\\Gréta\\nova slozka\\skript.bat
    tento soubor
    C:\\Users\\Gréta\\nova
    Řešení 1× (Vladimír Čunát)
    Jendа avatar 1.3.2020 23:00 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    Proč dáváš shell=True když ho nepotřebuješ? Bez toho je to argv pole kde je přímo cesta k souboru (a ty další prvky jsou parametry) a žádné shellové escapování nebudeš řešit.
    1.3.2020 23:04 jj
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    Tak jak to mám napsat?
    subprocess.call(path, shell=False)
    Jendа avatar 1.3.2020 23:07 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    subprocess.call([path])
    shell=False je default.
    1.3.2020 23:21 jj
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    To vypadá Jendo, že to asi funguje, musím otestovat pořádně, a když chci kopírovat soubor? Děkuji
    subprocess.call(['copy', filepath1, filepath2])
    Gréta avatar 2.3.2020 16:34 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné

    todleto ti bude fungovat si myslim jenom v linuxu s příkazem cp jako subprocess.call(['cp', filepath1, filepath2]) ve win asi budeš muset jako použít misto pole ten jedinej string a argument shell=True

    kopírování s mezírkama mi ve win fungovalo takhlenc

    subprocess.call("copy orig.txt \"kopie s mezerama.txt\"",shell=True)
    

    tomu shell true je ale prej dobrý se vyhnout vždykcky když se dá protože jako muže bejt dost nebezpečný hele :O :O

    jestli ti ale jako de jenom o kopírování souborů tak jsou i nějaký hotový multiplatformní řešení v tom pythonu třeba shutil hele ;D

    Gréta avatar 1.3.2020 23:19 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné

    no jasně jako já to tam ve win cpu do subprocess.call bez toho argumentu shell=True proto mi to jede :O :O :O :O

    1.3.2020 23:31 jj
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    A spustí se ti ten dávkový soubor bat v novém terminálu?
    Gréta avatar 1.3.2020 23:53 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné

    to ne

    jestli to jako chceš nechat běžet v jiným okýnku tak tohleto řešení by pod win mohlo jet

    import os
    import subprocess
    from subprocess import CREATE_NEW_CONSOLE
    
    path="C:\\Users\\Gréta\\nova slozka\\skript.bat"
    subprocess.call([path], creationflags=CREATE_NEW_CONSOLE)
    
    
    2.3.2020 00:29 jj
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    Díky moc, už se mi to taky spustí v novém okně, ale pořád to čeká na dokončení, proč? Chtěl bych to jen spustit a ať si to otevřené okno žije vlastním životem :-)
    Jendа avatar 2.3.2020 01:03 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    subprocess.Popen
    2.3.2020 13:38 jj
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    Funguje, díky.
    Gréta avatar 2.3.2020 16:35 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné

    supr ;D

    5.3.2020 01:36 jj
    Rozbalit Rozbalit vše Re: Problém s cestou která obsahuje mezeru a je uložená v proměnné
    Díky ;-)

    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.