bash

Sekcia: Programovanie 16.12.2007 | 12:43
kookie   Návštevník
Potreboval by som pomoc s nasledujucimi vecami:

1. Ako viem zistit ci premena ktora obsahuje retazec zacina cislom

2.Ako vypisem na obrazovku loginy ktore su uy vytvorene

3.Ako spustim zo skriptu program man pre najeky prikaz tak aby to vypisalo text na obrazovku

Dakujem za pomoc
    • Re: bash 16.12.2007 | 13:01
      Avatar Tomáš Srnka Barz čo, už asi všetko  Administrátor
      2. cat /etc/passwd
      Dlho som robil linuxos.sk, neskôr založil vpsFree.cz, posledných pár rokov ako tech. riaditeľ vo Websupporte
    • Re: bash 16.12.2007 | 13:04
      WlaSaTy   Návštevník
      1. zoberies prvy znak a skontrolujes ci je cislo. napriklad v shelli cez case.
      2. pozries obash /etc/passwd, viac info je v man 5 passwd. ak by si chcel vypisat len loginy, tak navyse man cut.
      3. tak toto by zaujimalo aj mna co s tym ucitel myslel, obrazovka patri medzi vystupne zariadenia a nie je unikatna az na /dev/console ktoru ale v dnesnej dobe uzivatelia nepoznaju.

      • Re: bash 16.12.2007 | 13:20
        Avatar Tomáš Srnka Barz čo, už asi všetko  Administrátor
        2. awk -F: '{ print $1 }' /etc/passwd
        Dlho som robil linuxos.sk, neskôr založil vpsFree.cz, posledných pár rokov ako tech. riaditeľ vo Websupporte
        • Re: bash 16.12.2007 | 13:29
          Avatar uid0 Debian  Používateľ
          getent passwd

          nikto nevie kde je passwd databaza
          Debian. apt-get into it…
      • Re: bash 17.12.2007 | 16:40
        kookie   Návštevník
        Add1.
        Ale ako zoberiem ten prvy znak ked textova premenna nie je pole.
        Skusal som prvy znak zobrat tak ze: $(meno[0]) ale tak to nefinguje
        • Re: bash 17.12.2007 | 17:57
          lieko   Návštevník
          echo $premenna > /tmp/tmp.file
          cut -b 1 /tmp/tmp.file

          ale pojde to aj jednoduchsie
          • Re: bash 18.12.2007 | 23:04
            Avatar Jaroslav Bernát BackTrack 3  Používateľ
            vsak toto nieje az také zlozité ...jeden riadok kodu ...

            echo "$x" > /tmp/tmp.file && cut -b 1 /tmp/tmp.file && rm /tmp/tmp.file
            ked nevieš, tak nefušuj
            • Re: bash 18.12.2007 | 23:21
              Avatar uid0 Debian  Používateľ
              a co ak ma niekto $TEMP alebo $TMP

              a co ak prepises dolezity subor? (man mktemp)
              Debian. apt-get into it…
              • Re: bash 18.12.2007 | 23:49
                Avatar Jaroslav Bernát BackTrack 3  Používateľ
                no boze...ako keby islo o subor .... tak meno tmp suboru bude :
                meno=`echo "$(($RANDOM % 7382664238))"lasdajhdujassadasdgdg"$(($RANDOM % 796263382664238))"thaushdaks` && touch /tmp/"$meno"
                ked nevieš, tak nefušuj
                • Re: bash 19.12.2007 | 00:29
                  WlaSaTy   Návštevník
                  lavou rukou za pravým uchom.

                  inak o premennej $$ si už počul? je v manuali k shell
                • Re: bash 19.12.2007 | 00:46
                  Avatar uid0 Debian  Používateľ
                  no boze, zase ignorujes $TMP a $TEMP a ani si sa nepozrel na mktemp
                  Debian. apt-get into it…
                  • Re: bash 19.12.2007 | 13:31
                    Avatar Jaroslav Bernát BackTrack 3  Používateľ

                    TMPFILE=‘mktemp -t echo.XXXXXXXXXX‘ && {
                    echo $premena > $TMPFILE
                    cut -b 1 $TMPFILE
                    rm -f $TMPFILE
                    }


                    spokojný ?
                    ked nevieš, tak nefušuj
                    • Re: bash 19.12.2007 | 13:51
                      Avatar uid0 Debian  Používateľ
                      tu nejde o mna :)
                      Debian. apt-get into it…
                      • Re: bash 19.12.2007 | 15:09
                        WlaSaTy   Návštevník
                        ozaj, nechýbajú im pajpy?
    • Re: bash 18.12.2007 | 23:11
      Avatar Jaroslav Bernát BackTrack 3  Používateľ
      na stýl jednotky aj 3ku :

      man echo > /tmp/echo && tvoj_oblubeny_text_editor /tmp/echo && rm /tmp/echo

      ak nemáš namysli niečo takéto tak povedz čo myslíš pod pojmom "vypísať na obrazovku"
      ked nevieš, tak nefušuj