Bash script

Kezdőlap Fórumok Programozás Bash script

10 bejegyzés megtekintése - 181-190 / 438
  • Szerző
    Bejegyzés
  • #2053359
    uzsolt
    Felhasználó

      Nekem van. Gondolom, jó lenne, ha el is árulnám  :poketoungeb:

      Code:
        for i in `find /path/ahonnan/akarod -type f`; do
                ujnev=`basename $i`
                mv $i  /ahova/akarod/masolni/`echo $ujnev | sed  ‘s@.[a-z|A-Z|0-9]*$@@g’`
        done
      #2053360
      tothaa
      Felhasználó

        hozzászólás törölve

        #2053361
        retaliator44
        Felhasználó

          Ahha. Ez tetszik. Köszönöm szépen.

          Szerk.: kihozzátok belőlem az ihletet… olyan ötleteket adtok, hogy magam is meglepődöm, miket tudok alkotni belőlük 🙂

          #2053362
          retaliator44
          Felhasználó

            Tudnátok erre valami rövidebb/elegánsabb megoldást?

            Code:
            pnmcat -lr $DIR/${t[57]} $DIR/${t[58]} $DIR/${t[59]} $DIR/${t[60]} $DIR/${t[61]} $DIR/${t[62]} $DIR/${t[63]} $DIR/${t[64]} >$DIR/result1
            pnmcat -lr $DIR/${t[49]} $DIR/${t[50]} $DIR/${t[51]} $DIR/${t[52]} $DIR/${t[53]} $DIR/${t[54]} $DIR/${t[55]} $DIR/${t[56]} >$DIR/result2
            pnmcat -lr $DIR/${t[41]} $DIR/${t[42]} $DIR/${t[43]} $DIR/${t[44]} $DIR/${t[45]} $DIR/${t[46]} $DIR/${t[47]} $DIR/${t[48]} >$DIR/result3
            pnmcat -lr $DIR/${t[33]} $DIR/${t[34]} $DIR/${t[35]} $DIR/${t[36]} $DIR/${t[37]} $DIR/${t[38]} $DIR/${t[39]} $DIR/${t[40]} >$DIR/result4
            pnmcat -lr $DIR/${t[25]} $DIR/${t[26]} $DIR/${t[27]} $DIR/${t[28]} $DIR/${t[29]} $DIR/${t[30]} $DIR/${t[31]} $DIR/${t[32]} >$DIR/result5
            pnmcat -lr $DIR/${t[17]} $DIR/${t[18]} $DIR/${t[19]} $DIR/${t[20]} $DIR/${t[21]} $DIR/${t[22]} $DIR/${t[23]} $DIR/${t[24]} >$DIR/result6
            pnmcat -lr $DIR/${t[9]} $DIR/${t[10]} $DIR/${t[11]} $DIR/${t[12]} $DIR/${t[13]} $DIR/${t[14]} $DIR/${t[15]} $DIR/${t[16]} >$DIR/result7
            pnmcat -lr $DIR/${t[1]} $DIR/${t[2]} $DIR/${t[3]} $DIR/${t[4]} $DIR/${t[5]} $DIR/${t[6]} $DIR/${t[7]} $DIR/${t[8]} >$DIR/result8

            pnmcat -tb $DIR/result1 $DIR/result2 $DIR/result3 $DIR/result4 $DIR/result5 $DIR/result6 $DIR/result7 $DIR/result8

            (A feladat az lenne, hogy egy 64-ig indexelt tömb elemeiből(filenevek) egy 8×8-as nagy képet csináljak.)

            #2053363
            milfer
            Felhasználó

              Hi
              Kellene egy kis segítség.
              Van egy pppd indító scriptem, ami működik csak a következővel van egy kis gondom.
              Letiltom a pppd kimenetét és így működik is.

              Code:
              pon $1 updetach >/dev/null

              De ha a „>/dev/null-t” egy változóba teszem akkor már a változót  paraméternek veszi és nem működik.

              Code:
              NULL=”>/dev/null”
              pon $1 updetach $NULL
              pon $1 updetach „$NULL”
              pon $1 updetach ${NULL}
              pon $1 updetach „${NULL}”

              Megoldható az , hogy szabályozni lehessen valahogy egy progam kimenetét, hogy megjelenjen, vagy ne. Én a fenti módon akartam, hogy egyszer van értéke a NULL-nak NULL=”>/dev/null”, akkor nincs kimenet. Egyszer pedig nincs értéke NULL= akkor pedig megjelenik a kimenet.
              Kösz.

              #2053364
              uzsolt
              Felhasználó

                retaliator44: for-ciklussal generálod a paraméterlistát?

                milfer: mi lenne, ha csak egy egyszerű változó lenne, valami ilyesmi:

                Code:
                if [ -z $NULL ]; then
                    pon
                else
                    pon > /dev/null
                fi

                Egyébként szenvedtem én is ilyesmivel, csak csövezéssel. Én egy ilyen „áthidaló” megoldást találtam.

                #2053365
                milfer
                Felhasználó
                  uzsolt wrote:
                  retaliator44: for-ciklussal generálod a paraméterlistát?

                  milfer: mi lenne, ha csak egy egyszerű változó lenne, valami ilyesmi:

                  Code:
                  if [ -z $NULL ]; then
                  pon
                  else
                  pon > /dev/null
                  fi

                  Egyébként szenvedtem én is ilyesmivel, csak csövezéssel. Én egy ilyen „áthidaló” megoldást találtam.

                  Végülis így is jó, már nem láttam a fátol az erdőt. 🙂 Igaz nem csak a pon-ról van szó, van itt smbmount, iptables, ip route, stb., stb.
                  Megpróbálom így, és mindíg a run-t hívom meg a futtatandót átadva paraméternek.

                  Code:
                  run() {
                  if [ -z $NULL ]; then
                  $1
                  else
                  $1 > /dev/null
                  fi
                  }
                  #2053366
                  retaliator44
                  Felhasználó
                    uzsolt wrote:
                    retaliator44: for-ciklussal generálod a paraméterlistát?

                    Igen, két egymásba ágyazott for ciklus számítja ki a t tömb értékeit.

                    De lenne rögtön még egy kérdésem is: egy stringben hogy lehet sed nélkül megszámolni mondjuk az F betűket?

                    #2053367
                    uzsolt
                    Felhasználó

                      Csak a nagy F-eket?

                      tr -d [a-z][A-E][G-Z][0-9]’n'[.,] ….. | wc -b

                      Nyilván ezt csövezed. Tehát mi is a lényeg: minden NEM F-et törlünk (lehet, hogy ezt jobban is meg lehet oldani), majd a végeredmény hosszát a wc -b-vel megnézzük.

                      #2053368
                      uzsolt
                      Felhasználó
                        retaliator44 wrote:
                        Igen, két egymásba ágyazott for ciklus számítja ki a t tömb értékeit.

                        Jajj, most látom, hogy félreértettél.
                        Én valahogy így gondoltam:

                        Code:
                        for i in `seq 57 64`; do
                            PARAMETER=$PARAMETER” „$DIR/${t[$i]}
                        done
                        nmcat -lr $PARAMETER > $DIR/result1

                        Nem tudom, működik-e, nincs most időm kipróbálni.

                      10 bejegyzés megtekintése - 181-190 / 438
                      • Be kell jelentkezni a hozzászóláshoz.