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 17:33 | Komunita

    MDN (Wikipedie), dnes MDN Web Docs, původně Mozilla Developer Network, slaví 20 let. V říjnu 2004 byl ukončen provoz serveru Netscape DevEdge, který byl hlavním zdrojem dokumentace k webovým prohlížečům Netscape a k webovým technologiím obecně. Mozille se po jednáních s AOL povedlo dokumenty z Netscape DevEdge zachránit a 23. července 2005 byl spuštěn MDC (Mozilla Developer Center). Ten byl v roce 2010 přejmenován na MDN.

    Ladislav Hagara | Komentářů: 0
    dnes 14:55 | Nová verze

    Wayback byl vydán ve verzi 0.1. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.

    Ladislav Hagara | Komentářů: 0
    dnes 13:33 | Nová verze

    Byla vydána nová verze 6.18 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově se lze k síti Tor připojit pomocí mostu WebTunnel. Tor Browser byl povýšen na verzi 14.5.5. Thunderbird na verzi 128.12.0. Další změny v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    včera 14:33 | IT novinky

    Meta představila prototyp náramku, který snímá elektrickou aktivity svalů (povrchová elektromyografie, EMG) a umožňuje jemnými gesty ruky a prstů ovládat počítač nebo různá zařízení. Získané datové sady emg2qwerty a emg2pose jsou open source.

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

    Byla vydána (𝕏) nová verze 25.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 25.7 je Visionary Viper. Přehled novinek v příspěvku na fóru.

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

    Před 40 lety, 23. července 1985, společnost Commodore představila první počítač Amiga. Jednalo se o počítač "Amiga od Commodore", jenž byl později pojmenován Amiga 1000. Mělo se jednat o přímou konkurenci počítače Apple Macintosh uvedeného na trh v lednu 1984.

    Ladislav Hagara | Komentářů: 2
    včera 06:00 | IT novinky

    T‑Mobile USA ve spolupráci se Starlinkem spustil službu T-Satellite. Uživatelé služby mohou v odlehlých oblastech bez mobilního signálu aktuálně využívat satelitní síť s více než 650 satelity pro posílání a příjem zpráv, sdílení polohy, posílání zpráv na 911 a příjem upozornění, posílání obrázků a krátkých hlasových zpráv pomocí aplikace Zprávy Google. V plánu jsou také satelitní data.

    Ladislav Hagara | Komentářů: 9
    23.7. 21:55 | Komunita

    Společnost Proxmox Server Solutions stojící za virtualizační platformou Proxmox Virtual Environment věnovala 10 000 eur nadaci The Perl and Raku Foundation (TPRF).

    Ladislav Hagara | Komentářů: 2
    23.7. 21:22 | Bezpečnostní upozornění

    Byla vydána nová verze 2.4.65 svobodného multiplatformního webového serveru Apache (httpd). Řešena je bezpečnostní chyba CVE-2025-54090.

    Ladislav Hagara | Komentářů: 0
    23.7. 14:22 | IT novinky

    Společnost Proton AG stojící za Proton Mailem a dalšími službami přidala do svého portfolia AI asistenta Lumo.

    Ladislav Hagara | Komentářů: 7
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (27%)
     (25%)
     (6%)
     (5%)
     (5%)
     (2%)
     (2%)
     (29%)
    Celkem 125 hlasů
     Komentářů: 16, poslední dnes 15:31
    Rozcestník

    Dotaz: Jak vytvořit kopii souboru

    14.12.2017 23:13 Dejv
    Jak vytvořit kopii souboru
    Přečteno: 601×
    Ahoj

    normálně používám cp ale potřebuji to udělat jinak, potřebuji načíst celý soubor do proměnné a pak obsah z proměnné uložit do jiného souboru. Jedná se o BASH script. Snad někdo poradí. Předem díky.

    Odpovědi

    14.12.2017 23:20 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    cat zdroj > cíl
    Přes proměnnou je to trochu komplikovanější:
    TEMP=`cat zdroj`
    echo -n "$TEMP" > cíl
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    14.12.2017 23:35 Dejv
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    Děkuji, ale slovo 'pak' nebylo v tomto případě velmi vhodné, opravuji na slovo 'později'.

    Jinými slovy, potřebuji to v té proměnné (v tom souboru) uchovat, nevím jak to popsat, zkusí to znova.

    Jde napsat v BASH script, který vytvoří nový soubor, v tom souboru vytvoří nějakou VAR, do té se načte obsah toho souboru (zdroj) a soubor uloží.
    15.12.2017 09:12 figliar0
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    Coze?

    Mozno by bolo lepsie napisat, co vlastne chces docielit... Ak som to spravne pochopil, chces ulozit do suboru premennu, v ktorej bude ulozeny obsah suboru? To sa podla mna neda a je to hlupost - vsak uz predsa mas ten subor ulozeny...
    Jendа avatar 15.12.2017 09:53 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    Podle mě chce mktemp.
    15.12.2017 09:59 vaše jméno
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    Co predstavujes pod pojmem "vytvorit VAR v souboru"?
    15.12.2017 14:09 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    Premenná neexistuje ako nejaký nezávislý objekt. Zoznam premenných a ich hodnôt udržiava shell. Keď pustíš jeden shell, tak ten má svoj zoznam premenných a iný shell má iný zoznam premenných. Ak sa pustí skript, tak na jeho vykonanie sa pustí ďalší shell a ten bude mať svoj vlastný zoznam premenných a ich hodnôt. Keď shell skončí, tak pamäť, ktorú používa sa uvoľní a tým pádom premenné toho shell-u zanikajú. Ak jeden shell spustí iný shell, tak ten spustený (potomok) bude vidieť tie premenné (a ich hodnoty), ktoré rodič exportoval príkazom export.

    To treba vstrebať a z toho potom vyplynú mnohé odpovede.

    Tiež si treba uvedomiť, že súbor môže byť binárny (obsahovať nielen čitateľný text) a môže mať trebárs aj pár terabajtov. Preto nie je dosť dobré možné dať dobrú odpoveď na to, ako obsah súboru uchovať v premennej shell-u.

    Ak trváš na tom, že problém chceš riešiť zrovna takto, tak navrhujem, že ten problém popíšeš nejakým pseudo-kódom. Proste predpokladaj, že existujú nejaké elementárne konštrukcie a nástroje, ktoré by tvoj problém vyriešili, popíš to, a potom sa môžeme pokúsiť prerobiť tak, aby to naozaj fungovalo.
    Jendа avatar 15.12.2017 09:52 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    To se rozbije pro binární soubory nebo třeba když v tom souboru bude napsáno "-n".
    15.12.2017 10:42 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    Souhlasím, má to své mouchy. Sám bych to nepoužil, ale snažil jsem se alespoň částečně odpovědět na to nesmyslné zadání.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    15.12.2017 14:35 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    Ono je to zadání možná ještě nesmyslnější, než bylo napsáno v původním dotazu, jak se ukázalo o pár vláken výše. I přesto bych k tomu rád přičinil jednu poznámku:
    var='-n -n -n'
    cat > nějaký_soubor <<<"$var"
    
    17.12.2017 13:46 base64
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    To se rozbije pro binární soubory nebo třeba když v tom souboru bude napsáno "-n".
    Ano, lebo robi len to, co mu povies. ...

    Nie je problem spravit aj nacitanie binarneho suboru. Sprav tak, ze v premenne bude ukladane/nacitane zakodovane, napr. base64.
    15.12.2017 15:04 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru

    Soudě podle tohoto komentáře, myslím, že se snažíš uložit soubor do proměnné prostředí. (Aby se pak dal odtud znova přečíst zase ve stejném interaktivním shellu.)

    To ale nemůžeš udělat skriptem spouštěným v samostatném shellu, protože shell interpretující skript nemůže nijak ovlivnit proměnné prostředí procesu, který ho spustil. Takže skript sice uvidí všechny proměnné, které jsi ve svém interaktivním shellu exportoval, ale nemůže je nijak změnit ani k nim přidat nové. Přesněji, všechny změny, které udělá, zůstanou jen v jeho adresním prostoru [pořád extrémně zjednodušeno] a nebudou mít žádný vliv na ten původní shell, který celý skript (interpretovaný druhým, neinteraktivním shellem) spustil.

    Můžeš ale docílit něčeho podobného, když si skript zainlinuješ (pomocí . nějaký_skript.sh). Takový skript se pak vykoná přímo v kontextu toho interaktivního shellu (bez spouštění odděleného procesu) a může tedy měnit jeho proměnné.

    Ještě lepší je použít funkce. A nejlepší je dát je třeba do ~/.bashrc, aby byly všude dostupné.

    cp_file_var() {
      eval "$2"='"$(cat "$1")"'
    }
    
    cp_var_file() {
      cat > "$2" <<< "${!1}"
    }
    

    Příklad použití:

    cp_file_var /proc/cpuinfo cpuinfo_snapshot
    cp_var_file cpuinfo_snapshot /tmp/cpuinfo
    
    diff /{proc,tmp}/cpuinfo  # Frekvence se můžou lišit.
    echo "$cpuinfo_snapshot"  # Jo, fakt je to proměnná.
    

    Asi bych ale něco takového nezkoušel na jiné soubory než textové. :-)

    17.12.2017 19:10 jiwopene | skóre: 31 | blog: Od každého trochu…
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    První, co mne napadlo byl tee:
    PROMENNA=`cat zdroj|tee cil`
    Kopíruje data ze zdroje do cile a zapisuje do proměnné PROMENNA (do obou míst ve "stejnou" chvíli, bez ukládání do proměnné před uložením na disk).
    .sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patičky.
    17.12.2017 19:14 jiwopene | skóre: 31 | blog: Od každého trochu…
    Rozbalit Rozbalit vše Re: Jak vytvořit kopii souboru
    Proměnnou dejte při používání do uvozovek, aby soubor zůstal vcelku.
    $ cat >file0
    aaa bbb
    ccc ddd
    
    $ VAR=$(cat file0|tee file1)
    
    $ echo $VAR
    aaa bbb ccc ddd
    
    $ echo "$VAR"
    aaa bbb
    ccc ddd
    .sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patič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.