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 04:00 | Nová verze

    Byla vydána verze 9.5 open source unixového operačního systému NetBSD (Wikipedie). Přehled novinek v poznámkách k vydání. Jedná se poslední vydání řady NetBSD 9. Doporučen je přechod na NetBSD 11 nebo NetBSD 10.

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

    Akční adventura State of Mind je na portále GOG.com zdarma, akce trvá do 10. září.

    |🇵🇸 | Komentářů: 0
    včera 13:22 | IT novinky

    Na Kickstarteru běží kampaň na podporu malého robotický psa Petoi Quaddle. Postaven je na ESP32-S3. V několika variantách. S řadou senzorů. Programovat lze pomocí Pythonu, C++ nebo i vizuálních bloků. Zkoušet a trénovat lze v simulátoru.

    Ladislav Hagara | Komentářů: 1
    6.9. 22:11 | Pozvánky

    Dětem začala škola a nedobrovolně se tak musí vzdělávat. Avšak pro dospělé, kteří se chtějí vzdělávat nebo naopak se o vědomosti podělit, je tu Virtuální Bastlírna - jako každý měsíc si můžete online a zdarma nezávazně popovídat o vědě a technice nejen s bastlíři, ale i s vývojáři, vědci nebo profesory. A čemu se strahováci budou věnovat? Blíží se KiCAD 11 s nespočtem novinek, z nichž zde musí zmínit alespoň možnost kótování a závislostí z

    … více »
    bkralik | Komentářů: 1
    6.9. 19:33 | Komunita

    Asahi Linux, tj. Linux pro Apple Silicon, oficiálně podporuje čipy M3 (M3, M3 Pro a M3 Max).

    Ladislav Hagara | Komentářů: 5
    6.9. 15:44 | IT novinky Ladislav Hagara | Komentářů: 1
    6.9. 15:00 | IT novinky

    Server SiFive BigSky SF-2U870 2U je založený na jádře SiFive P870-D, zatím je naintegrovaných 32 jader 256 GB RAM 2 GHz, škálovat lze do 256 jader na čip. O něco podrobnější popis serveru v článku SiFive BigSky Ships the First RISC-V Server. Is the GPU Head Node the Prize? na futurumgroup.com. Asi ani tento čip nebude na úrovni nejlepších 64-bit ARMů a AMD Zenů, ale splňuje RVA23 specifikaci a je podporovaný Ubuntu 26.04 LTS a RHEL 10. V článku je

    … více »
    Pavel Píša | Komentářů: 1
    6.9. 00:11 | IT novinky

    Na YouTube lze zhlédnout nový celovečerní dokumentární film The Story of VS Code | Official Documentary věnovaný Visual Studio Code.

    Ladislav Hagara | Komentářů: 20
    4.9. 23:49 | Zajímavý článek

    Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 26.08.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.

    Ladislav Hagara | Komentářů: 1
    4.9. 17:33 | Zajímavý článek

    Bylo vydáno nové číslo hackerského magazínu tmp.0ut: Volume 5.

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (4%)
     (21%)
     (29%)
     (7%)
     (6%)
     (2%)
     (14%)
     (21%)
    Celkem 2610 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: Zjištění oddlílu podle current adresáře

    16.1.2018 20:55 MilanC | skóre: 16
    Zjištění oddlílu podle current adresáře
    Přečteno: 449×
    Ahoj, snažím se vyřešit takovou věc. Cílem je zobrazovat jako součást promptu (rw) nebo (ro) podle toho, jestli je příslušný systém, na kterém se aktuálně nacházím mountnutý v ro/rw.

    Takže jsem poeditoval /etc/bash.bashrc

    set_bash_prompt() { fs_mode=$(mount | sed -n -e "s/^\/dev\/.* on \/ .*(\(r[w|o]\).*/\1/p") if [ "$fs_mode" == 'ro' ]; then PS1='\u@\h\[\033[01;31m\]${fs_mode:+($fs_mode)}\[\033[00m\]:\w\$ ' # elif [ "$fs_mode" == 'rw' ]; then # PS1='\u@\h\[\033[01;32m\]${fs_mode:+($fs_mode)}\[\033[00m\]:\w\$ ' fi }

    PROMPT_COMMAND=set_bash_prompt

    Má to ale jeden háček, nereflektuje to změnu adresáře. Např. když jsem na rw a udělám cd /boot (oddíl, který je ro), tak stále ukazuje rw. Háček je v tom zjišťování fs_mode, kde parsuje jen z root FS (/). Potřeboval bych nějak docílit, aby byl reflektován vždy aktuální adresář, tj. z něho zjištěn oddíl (správný řádek z mount). Tedy nějaký příkaz, jehož vstupem bude cesta a výstupem mountpoint, který mi pak poslouží při výběru správného řádku z mount (a zjištění ro/rw). Snad jsem to popsal srozumitelně.

    Děkuji za nápady.

    Řešení dotazu:


    Odpovědi

    16.1.2018 21:24 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Zjištění oddlílu podle current adresáře
    Místo
    mount | sed ...
    zkus dát
    ls -ld .|cut -c 2,3
    Aktuální oddíl se dá zjistit příkazem
    df .
    Oříznutý výsledek můžeš použít jako filtr do svého sedu.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    Josef Kufner avatar 16.1.2018 21:25 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Zjištění oddlílu podle current adresáře
    if awk -v mountpoint=$(df --output=target --no-sync . | tail -1) '$2 == mountpoint { exit $4 ~ "^ro(,|$)"; }' /proc/mounts
    then
        echo rw
    else
        echo ro
    fi
    Hello world ! Segmentation fault (core dumped)
    16.1.2018 22:09 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: Zjištění oddlílu podle current adresáře
    Díky, pochopil jsem tuto část, která vrátí mountpoint do proměnné

    mountpoint=$(df --output=target --no-sync . | tail -1)

    Ale awk moc neumím. :( pak passneš tu variable mountpoint do awku, ale pak mi už moc není jasné co s čím porovnáváš. Dalo by se případně udělat, aby byl výstup ro/rw jako v tom původním případě? I když je to asi jedno. Zatím mi to ale nechce fungovat.
    16.1.2018 22:22 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: Zjištění oddlílu podle current adresáře
    Děkuji, funguje. :-) Ještě bych si dovolil poprosit o jednu radu s proměnnou.
            if awk -v mountpoint=$(df --output=target --no-sync . | tail -1) '$2 == mountpoint { exit $4 ~ "^ro(,|$)"; }' /proc/mounts
            then
                    FSPERM="[\033[01;32m\](rw)\[\033[00m\]"
            else
                    FSPERM="[\033[01;31m\](ro)\[\033[00m\]"
            fi
    
            PS1='\u@\h\$FSPERM:\w\$ '
    
    Ať to zkouším jakkoli, tímto stylem se nebarví, ale vypisuje se obsah FSPERM. Zkoušel jsem třeba ${FSPERM}, PS1 dát do "..", naopak FSPERM do ' ' a různé kombinace. Lze to takto udělat nebo musím celé ty PS1 i s barvou dát do každé části podmínky? Děkuji.
    16.1.2018 22:31 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: Zjištění oddlílu podle current adresáře
    Tak už to mám. Děkuji oběma! Využil jsem nápovědy na Tvém webu (hacking-bash), takže řešení je... :-)
    PS1='\u@\h\'$FSPERM':\w\$ '
    

    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.