Twoje PC  
Zarejestruj się na Twoje PC
TwojePC.pl | PC | Komputery, nowe technologie, recenzje, testy
B O A R D
   » Board
 » Zadaj pytanie
 » Archiwum
 » Szukaj
 » Stylizacja

 
M E N U
  0
 » Nowości
0
 » Archiwum
0
 » Recenzje / Testy
0
 » Board
0
 » Rejestracja
0
0
 
Szukaj @ TwojePC
 

w Newsach i na Boardzie
 
OBECNI NA TPC
 
 » Shark20 03:09
 » cVas 03:07
 » Zibi 02:45
 » selves 02:14
 » Pinokio.p 02:03
 » Banan 01:42
 » piszczyk 01:33
 » SpiDy 01:08
 » mo2 01:06
 » g5mark 01:02
 » biEski 01:00
 » Martens 00:57
 » slanter 00:55
 » adolphik 00:27
 » Piwomir 00:19
 » gigamiki 00:11
 » Pawiano 00:11
 » jenot 00:11
 » DJopek 00:01
 » XepeR 00:00

 Dzisiaj przeczytano
 41145 postów,
 wczoraj 25974

 Szybkie ładowanie
 jest:
włączone.

 
ccc
TwojePC.pl © 2001 - 2024
A R C H I W A L N A   W I A D O M O Ś Ć
    

[Linux] Skrypt przeglądający katalogi , pomocy. , Master/Pentium 26/06/03 22:52
Jak w linux'ie napisać skrypt, który w danym katalogu zajrzy do KAŻDEGO podkatalogu a w środku coś tam sobie wykona. To coś to sobie już wpiszę sam. Ale nie wiem jak napisać resztę. Pomocy, potrzebuję tego dla siebie (porządki dysku) a jestem tak zmęczony, że ledwo myśle :( .

Nie ma tego złego , co by się w gorsze
obrócić nie mogło - jak nie wierzysz
włącz komputer :-)

  1. Duzo nie pomoge ;) , guma 27/06/03 01:36
    Ale moze man test ?
    Byc moze w pierwszych 4 wierszach manuala bedzie odpowiedz :)

    ps. if lubi test :)

  2. Może trochę przekombinowałem, ale działa... , kicior 27/06/03 02:31
    echo "ala=$(pwd)" > ala.sh ; ls -RA | grep -d recurse '^\./.*$' | sed y/:/\ / | sed s/'^\.\/'/'cd\ \$ala\/'/g | gawk '{ print $0, RS,"dupa" }' >> ala.sh ; sh ./ala.sh ; rm -rf ./ala.sh

    wpisz to w linię poleceń i wal enter. Za "dupa" podstaw swoje polecenie.

  3. trochę mi pomógł kolega , Master/Pentium 27/06/03 09:00
    mam takie coś:

    #!/bin/sh
    katalog=/dane/MuzykaHQ
    pliki=`find $katalog -name "*" -type d 2>/dev/null`

    for plik in $pliki ;
    do
    id3v2 -d $plik/*.mpc
    done

    Niestety podobnie jak podpowiedź nr.2 nie radzi sobie ze spacjami w nazwie plików. A mam tych spacji dużo ;). Ujęcie zmiennej w cudzysłów nie pomaga, wtedy bowiem pętla nie działa wskutek braku rozbicia na poszczególne elementy (nazwy).

    Nie ma tego złego , co by się w gorsze
    obrócić nie mogło - jak nie wierzysz
    włącz komputer :-)

  4. Spacje w nazwach plików poprzedzać musisz baskslashem... , kicior 27/06/03 09:46
    inaczej nic nie poradzi rzeczywiście. Spacja jak i parę innych znaków jest znakiem specjalnym i aby użyć jej literalnie musisz go uzwyczajnić przez poprzedzenia znakiem "\". Dla treningu spróbuj założyć sobie jakiś katalog ze spacją w nazwie i go skasuj. Np: nie możesz napisać "mkdir ala ma kota" tylko "mkdir ala\ ma\ kota". Podobnie usuwasz go "rmdir -rf ala\ ma\ kota".

    to tyle

    1. Poza tym moja kombinacja z punktu2... , kicior 27/06/03 09:56
      robi dokładnie to co opisałeś: wchodzi do każdego katalogu i podkatalogu w bieżącym i wykonuje polecenie dupa. Jedno tylko może jest nie jasne - to polecenie ma być w cudzysłowach czyli jeśli chcesz np. zobaczyć gdzie masz i jakie mptrójki to piszesz:
      echo "ala=$(pwd)" > ala.sh ; ls -RA | grep -d recurse '^\./.*$' | sed y/:/\ / | sed s/'^\.\/'/'cd\ \$ala\/'/g | gawk '{ print $0, RS,"ls -la *.mp3" }' >> ala.sh ; sh ./ala.sh ; rm -rf ./ala.sh

      1. tego się domyśłiłem , Master/Pentium 27/06/03 10:01
        jednak to też nie lubi spacji w nazwach katalogów. Nie mam pojęcia jak to rozwiązać :(

        Nie ma tego złego , co by się w gorsze
        obrócić nie mogło - jak nie wierzysz
        włącz komputer :-)

    2. wiem o tym , Master/Pentium 27/06/03 09:59
      ale jak przenieść to do skryptu ?

      Nie ma tego złego , co by się w gorsze
      obrócić nie mogło - jak nie wierzysz
      włącz komputer :-)

      1. Powiedz dokładniej co chcesz zrobić... , kicior 27/06/03 10:17
        123

        1. no to lecim , Master/Pentium 27/06/03 11:38
          1. Skrypt służy do uporządkowania zbiorów muzyki
          2. Rzeczone zbiory zawierają w nazwach katalogów dużo spacji.
          3. W każdym katalogu skrypt ma wykonać:
          - usunięcie tagów ID3v2
          -zastosowanie replaygain
          -dodanie danych naprawczych (program PAR2)
          (te linijki wykonać potrafię :) )

          No i jak widać mam problem. Niestety Linux'a mam od niedawna i w wielu sprawach jestem jeszcze kapuściany głąb ;)

          Nie ma tego złego , co by się w gorsze
          obrócić nie mogło - jak nie wierzysz
          włącz komputer :-)

  5. Teraz wchodzi do katalogów ze spacjami... , kicior 27/06/03 12:44
    echo "ala=$(pwd)" > ala.sh ; ls -RA | grep -d recurse '^\./.*$' | sed s/'\ '/'\\\ '/g | sed y/:/\ / | sed s/'^\.\/'/'cd\ \$ala\/'/g | gawk '{ print $0, RS,"dupa1 ; dupa2 ; dupa3" }' >> ala.sh ; sh ./ala.sh ; rm -rf ./ala.sh

    PS aby wykonać kilka poleceń w jednej linii oddziela się je średnikiem - w przykładzie wykona się dupa1 potem dupa2 potem dupa3.

    1. ot ... , XTC 27/06/03 14:09
      Kicior... zaglądam czasem na ten Twój serwer i tylko się boty naparzają... /wyłącz to bfg na początku bo w takim hałasie trudno się na kogokolwiek czeka/ ...

      Linux

      1. Szykujemy się do zmiany łącza... , kicior 27/06/03 14:11
        bo jest czkawka. A jaką masz ksywę w Q3?

        1. XTC... , XTC 27/06/03 14:51
          jak "XTC"...

          Linux

    2. dziękuję, działa :) , Master/Pentium 27/06/03 16:20
      nadal ma problemy z nawiasami & itp znakami specjalnymi ale w tych paru katalogach zmieniłem nazwy i gra. Tak więc dzięki. Później postudiuję jego działanie.

      Nie ma tego złego , co by się w gorsze
      obrócić nie mogło - jak nie wierzysz
      włącz komputer :-)

  6. Dodałem regułkę sed-a do zamiany " " na "\ "... , kicior 27/06/03 17:01
    trzebaby dorzucić analogiczne dla innych znaków specjalnych.
    No i radzę nie używać takich znaków w nazwach plików i katalogów - przerzuć się np. ze spacji na znaki podkreślenia. Unikniesz wielu dziwnych czasami problemów.

    1. niestety nie nazywałem katalogi , Master/Pentium 27/06/03 17:23
      o przebojach ze spacjami wiem. Na razie twój poprzedni skrypt już leci. A mnie czeka przestudiowanie go. Jeszcze raz dzięki.

      Nie ma tego złego , co by się w gorsze
      obrócić nie mogło - jak nie wierzysz
      włącz komputer :-)

      1. miałem na myśli nie ja , Master/Pentium 27/06/03 17:26
        ...

        Nie ma tego złego , co by się w gorsze
        obrócić nie mogło - jak nie wierzysz
        włącz komputer :-)

    
All rights reserved ® Copyright and Design 2001-2024, TwojePC.PL