Script irás (Sh)

Kezdőlap Fórumok Programozás Script irás (Sh)

10 bejegyzés megtekintése - 21-30 / 40
  • Szerző
    Bejegyzés
  • #2013535
    Bbt
    Felhasználó

      Próbáld ki 😉

      #2013536
      ELaci
      Felhasználó

        Valami ilyesmi?
        cut -d. -f1 $1

        Próbáld ki ezt:

        Code:
        nev=12345678.123
        ujnev=`echo $nev | cut -c 1-8`
        echo $ujnev

        ELaci

        Utólag jöttem rá hogy a filenév hossza változhat és nemcsak a kiterjesztés hossza. Ebben az esetben a fenti megoldás nem jó.

        #2013537
        ds
        Felhasználó

          ujnev=echo $reginev | sed -r ‘s/(.*)..*/1.ujexp/’
          (ujexp az új kiterjesztés amit szeretnél)

          #2013538
          KaZo
          Felhasználó

            Köszi a segítséget mindenkitõl.
            Valami ilyesmi jött be (az elõzõ szintaktikával):
            ujnev=”`echo $reginev | cut -d. -f1 $reginev`.ujexp”

            Persze nem bizti, hogy pontos, csak nem volt otthon a pendrive, így nem hoztam el a scriptet. Majd holnapra.
            Mégegyszer köszi.
            KaZo

            #2013539
            ds
            Felhasználó
              KaZo wrote:
              ujnev=”`echo $reginev | cut -d. -f1 $reginev`.ujexp”

              ezzel az a gond, ha több pont is van a nevben akkor nem jó (vagyis lehet, hogy ezt szeretnéd, de nem az utolsó pont utáni részt cseréli le)

              #2013540
              KaZo
              Felhasználó

                Akkor leírom az elkészített scripteket.
                Mûködés: a konvert.sh a beállított könyvtár összes fájljára meghívja a PALDVD_352x288.sh-t, ami a mencoderrel adott formátumba kódolja a fájlokat, és kiegészíti a fájlneveket. Közben persze töltöget egy LOG fájlt is.

                konvert.sh

                #!/bin/sh
                echo >DVD.log
                srcdir=”/windows/E/forras/”
                for i in $srcdir*
                do
                sh PALDVD_352x288.sh $i
                done;

                PALDVD_352x288.sh

                #!/bin/sh
                ujnev=”`echo $1 | cut -d. -f1`_PALDVD_352x288.mpg”
                echo „`date +%Y.%m.%d-%H:%M:%S` CONVERSION START $1 –> $ujnev” >>DVD.log
                mencoder -oac lavc -vc mpeg12 -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=352:288,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:acodec=ac3:abitrate=192:aspect=4/3 -ofps 25 -o $ujnev $1
                echo „`date +%Y.%m.%d-%H:%M:%S` CONVERSION END” >>DVD.log

                Hát, ennyi. Köszi mindenkinek a segítséget
                KaZo

                #2013541
                sipdav
                Felhasználó

                  Sziasztok! Hogy lehet megcsinálni egy olyan scriptet ami figyeli, hogy egy adott mappába generálódik-e, érkezik-e file és ha igen akkor automatikusan átmozgatja egy másik mappába? Az átmozgatás gondolom szimpla cp-vel megy majd, de azt hogyan „figyeltethetem”, hogy mikor generálódott oda egy file? Köszi

                  #2013542
                  maszili
                  Felhasználó
                    sipdav wrote:
                    Sziasztok! Hogy lehet megcsinálni egy olyan scriptet ami figyeli, hogy egy adott mappába generálódik-e, érkezik-e file és ha igen akkor automatikusan átmozgatja egy másik mappába? Az átmozgatás gondolom szimpla cp-vel megy majd, de azt hogyan „figyeltethetem”, hogy mikor generálódott oda egy file? Köszi

                    Például:

                    rsync -r $ForrásKonyvtar $CelKonyvtar

                    Azt csinálja hogy összehasonlítja a két könyvtár tartalmát rekurzívan és ha a forrásban
                    van olyan könyvtár vagy állomány ami a célkönyvtárban nincs akkor átmásolja.
                    (A célkönyvtárban nem törli és ha a cékönyvtárban megszûnik valami akkor nem törli
                    a forrás könyvtárból sem)

                    #2013543
                    sipdav
                    Felhasználó

                      Köszi! Gondolom ezt cron-nal célszerû futtatni meghatározott idõnként.

                      #2013544
                      sipdav
                      Felhasználó

                        Jó ez az rsync-es megoldás, de azt is meg kellene oldanom, hogy túl azon, hogy átmásolja A-ból B-be az A-ban nem levõ állományokat létre is kellene hoznia a scriptnek alkönyvtárakat a B-be került állományok neveivel megegyezõ módon egy C helyen. Tehát például ha létrjön egy text file a /home/valami/generalt.teszt néven, akkor túl azon, hogy a script ezt a file-t átmásolja a /etc/applikáció/véglegeshely-re hozzon létre egy alkönyvtárt is /home/masikhely/generalt.teszt – néven.

                      10 bejegyzés megtekintése - 21-30 / 40
                      • Be kell jelentkezni a hozzászóláshoz.