Skrypty - może ktoś pomoże? :)

Dyskusja w 'Oh'Linux? Software hacking' rozpoczęta przez użytkownika Nicodem, 4 Maj 2009.

Ładowanie...
  1. Nicodem
    Offline

    Nicodem Staff Contributor

    Dołączył:
    15 Sierpień 2008
    Wiadomości:
    132
    Miejscowość:
    Warszawa
    Local Time:
    03:11
    Oceny:
    +3 / 0 / -0
    Followers:
    1
    Hej,

    temat tylko lekko związany z QNAPami ale może znajdzie się tu ktoś kto mi pomoże przy napisaniu skryptu.
    Na szybko wygląda to tak, że mam linijkę kodu :

    Kod (Text):
    1. /opt/bin/busybox find -type f -name "*.xyz" -exec moj_skrypt_python.py "{}" \; >> log.txt
    kod ten wyszukuje w katalogach wszystkie pliki z rozszerzeniem .xyz i odpala skrypt w pythonie z pelna nazwa takiego pliku jako parametr.
    Wynik zapisywany jest do log'a.

    A teraz potrzebuję to tak zmodyfikować aby po znalezieniu pliku *.xyz w danym katalogu zaczynalo się sprawdzanie czy istnieje
    plik o takiej samej nazwie, ale o innym rozszerzeniu (.txt). Jeśli tak to nic nie robimy, jeśli nie - wykonuje się na pliku .xyz skrypt python
    jak powyżej.

    Help? :D
     
  2. hypnosiss
    Offline

    hypnosiss Moderator Contributor

    Dołączył:
    6 Lipiec 2008
    Wiadomości:
    321
    Miejscowość:
    Polska, Wrocław
    Local Time:
    02:11
    Oceny:
    +28 / 0 / -0
    Followers:
    0
    QNAP:
    TS-109/209
    Ethernet:
    1 GbE
    TS-109/209 1 GbE
    sorka ze tak późno, ostatnio nie mam czasu nawet dla siebie ...
    kod zrobiłem na szybko bez testowania w jak najprostrzy sposób. Nie wiem tylko czy parametr -exec podaje wszystko w jednym argumencie do basha czy każdy znaleziony plik osobno odpala skrypt.
    Poprostu uruchmiasz komendą
    Kod (Text):
    1. /opt/bin/busybox find -type f -name "*.xyz" -exec skrypt.sh "{}" \;
    skrypt.sh:
    Kod (Text):
    1. #!/bin/sh
    2. read a
    3. FINDTXT = $(find -name "$a.txt")
    4. if ($FINDTXT); then
    5. echo "Znalazłem $FINDTXT"
    6. else
    7. echo "Nie ma txt, uruchamiam skrypt pythona"
    8. python moj_skrypt_python.py $a
    9. fi
    Trzeba by było najlepiej zastosować cut w $a żeby wydobyć nazwe bez rozrzeżenia ...
    Kod napewno ma wady, ale chciałem cie nakierować :)
     
  3. Silas Mariusz
    Offline

    Silas Mariusz SysOp Administrator

    Dołączył:
    5 Kwiecień 2008
    Wiadomości:
    6 442
    Miejscowość:
    Nowy Sącz
    Local Time:
    03:11
    Oceny:
    +1 450 / 30 / -6
    Followers:
    24
    QNAP:
    TVS-x71
    Ethernet:
    1 GbE
    TVS-x71 1 GbE
    taki maly offtopic
    @Nicodem jak czytalem nazwe Twojego tematu to odrazu przypomniala mi sie jedna kwestia na IRCU:
    http://bash.org.pl/48640/
    tyle, ze tutaj ktos z problemami z ortografia :)

    a jesli przeklenstwa nie kłują Was w oczy to czytajcie ten:
    http://bash.org.pl/89615/
    - mnie rozwalilo :)


    a co do calych skryptow...
    hypnosiss Tobie sie spodobala chyba konsola i bash (ten na konsoli) :)
    mam racje ?
    ty uczyles sie basha majac QNAP'a czy juz wczesniej go znales?
     
  4. hypnosiss
    Offline

    hypnosiss Moderator Contributor

    Dołączył:
    6 Lipiec 2008
    Wiadomości:
    321
    Miejscowość:
    Polska, Wrocław
    Local Time:
    02:11
    Oceny:
    +28 / 0 / -0
    Followers:
    0
    QNAP:
    TS-109/209
    Ethernet:
    1 GbE
    TS-109/209 1 GbE
    Do nauki basha zmobilizował mnie mój QNAP i moje potrzeby :)
    Ale basha używam do jaichś krótkich, prostych skryptów , reszta python :p
    I to prawda spodobala mi sie konsolka :)
     
  5. Silas Mariusz
    Offline

    Silas Mariusz SysOp Administrator

    Dołączył:
    5 Kwiecień 2008
    Wiadomości:
    6 442
    Miejscowość:
    Nowy Sącz
    Local Time:
    03:11
    Oceny:
    +1 450 / 30 / -6
    Followers:
    24
    QNAP:
    TVS-x71
    Ethernet:
    1 GbE
    TVS-x71 1 GbE
    a moze perla troche ? :>
    ja osobiscie bardziej wole perla niz pythona :)
     
  6. hypnosiss
    Offline

    hypnosiss Moderator Contributor

    Dołączył:
    6 Lipiec 2008
    Wiadomości:
    321
    Miejscowość:
    Polska, Wrocław
    Local Time:
    02:11
    Oceny:
    +28 / 0 / -0
    Followers:
    0
    QNAP:
    TS-109/209
    Ethernet:
    1 GbE
    TS-109/209 1 GbE
    na początku był perl ale niedawno uświadomiłem sobie jak lepszy jest python :p
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Odrzuć powiadomienie.