19 berichten aan het bekijken - 1 tot 19 (van in totaal 19)
  • Q:
    Bijdrager
    RoyHochstenbach

    Elk bestand in een eigen map met dezelfde naam zetten

    Ik heb één map met heel veel (ongeveer 1000) PNG bestanden bij elkaar zitten. Nu moet ik elk bestand in een eigen map zetten, waarbij de map dezelfde naam krijgt als het PNG bestand (zonder .png erachter).

    Als 2e moet daarna elk png bestand in elke map de naam 001.png heten. Hoe kan ik dit het beste doen? Er zit volgens mij geen script in Automator om beide dingen te doen.

    Bijdrager
    sedikit

    Kijk eens of renamer4mac iets voor je is:
    http://www.versiontracker.com/dyn/moreinfo/macosx/17205

    Bijdrager
    Pieterr

    “Duik in de (onder)wereld die UNIX heet…”

    Stop de volgende tekst in een bestand ‘doit’ en sla het op in de map.
    Open de terminal, en maak het bestand uitvoerbaar: chmod a+x doit
    Voer het uit: ./doit
    Klaar.

    [code:1:85faef1dc0]for file in `ls *.png`
    do
    mkdir `basename -s .png $file`
    mv $file `basename -s .png $file`/001.png
    done[/code:1:85faef1dc0]

    Bijdrager
    RoyHochstenbach

    Er staat nu Command not Found bij Line 3 en 4. Dit blijft ie steeds herhalen totdat ik de Terminal afsluit.

    Bijdrager
    Pieterr

    Command not found? mkdir en mv?
    Heb je admin rechten op je Mac?

    Bijdrager
    RoyHochstenbach
    ”Pieterr”

    Command not found? mkdir en mv?
    Heb je admin rechten op je Mac?

    Ja ik heb admin rechten, en het is in mijn thuismap. Ik heb het ook al met SUDO geprobeerd.

    Er staat niet bij welk commando dat ie niet kent. Dit blijft zich steeds herhalen:

    [code:1:17d21403d6]./doit: line 3:  : command not found
    ./doit: line 4:  : command not found
    ./doit: line 3:  : command not found
    ./doit: line 4:  : command not found
    ./doit: line 3:  : command not found
    ./doit: line 4:  : command not found
    ./doit: line 3:  : command not found
    ./doit: line 4:  : command not found
    ./doit: line 3:  : command not found
    ./doit: line 4:  : command not found
    ./doit: line 3:  : command not found
    ./doit: line 4:  : command not found
    ./doit: line 3:  : command not found
    ./doit: line 4:  : command not found
    ./doit: line 3:  : command not found
    ./doit: line 4:  : command not found
    ./doit: line 3:  : command not found
    ./doit: line 4:  : command not found
    ./doit: line 3:  : command not found
    ./doit: line 4:  : command not found
    ./doit: line 3:  : command not found
    ./doit: line 4:  : command not found

    [/code:1:17d21403d6]

    Bijdrager
    Pieterr

    Ik snap het niet. Je opent de Terminal, en je geeft ‘mkdir’. Wat zie je dan? Ik zie dit:
    [code:1:e87122d2be]macpieter:~ pieter$ mkdir
    usage: mkdir [-pv] [-m mode] directory …[/code:1:e87122d2be]

    en deze?
    [code:1:e87122d2be]macpieter:~ pieter$ which basename
    /usr/bin/basename[/code:1:e87122d2be]

    Bijdrager
    RoyHochstenbach
    ”Pieterr”

    Ik snap het niet. Je opent de Terminal, en je geeft ‘mkdir’. Wat zie je dan? Ik zie dit:
    [code:1:ce254af44a]macpieter:~ pieter$ mkdir
    usage: mkdir [-pv] [-m mode] directory …[/code:1:ce254af44a]

    Dan staat hier [code:1:ce254af44a]usage: mkdir [-pv] [-m mode] directory …
    [/code:1:ce254af44a]

    Bijdrager
    Pieterr

    en deze?
    [code:1:771f44436e]macpieter:~ pieter$ which basename
    /usr/bin/basename[/code:1:771f44436e]

    en deze?
    [code:1:771f44436e]macpieter:~ pieter$ echo $PATH
    /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin[/code:1:771f44436e]

    Bijdrager
    RoyHochstenbach
    ”Pieterr”

    en deze?
    [code:1:46b4c2a785]macpieter:~ pieter$ which basename
    /usr/bin/basename[/code:1:46b4c2a785]

    en deze?
    [code:1:46b4c2a785]macpieter:~ pieter$ echo $PATH
    /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin[/code:1:46b4c2a785]

    Bij de bovenste geeft ie /usr/bin/basename. Bij de onderste staat er Path not found.

    Bijdrager
    Pieterr

    Hm. Kun je de inhoud van jouw ‘doit’ bestand eens hier posten? Ik vermoed dat er ergens een spatie ofzo tussenstaat…

    Bijdrager
    RoyHochstenbach
    ”Pieterr”

    Hm. Kun je de inhoud van jouw ‘doit’ bestand eens hier posten? Ik vermoed dat er ergens een spatie ofzo tussenstaat…

    for file in `ls *.png`
    do
        mkdir `basename -s .png $file`
        mv $file `basename -s .png $file`/001.png
    done

    De tekst is opgeslagen als platte tekst, en ziet precies hetzelfde uit als ik het open via Nano in de terminal.

    Bijdrager
    Pieterr

    Kun je eens expliciet een ‘bash’ shell starten, en daarna het commando ‘doit’ geven?
    [code:1:6bd4daf7b1]macpieter:~ pieter$ bash
    bash-3.2$ ./doit[/code:1:6bd4daf7b1]

    Welke OS X versie gebruik je?
    [code:1:6bd4daf7b1]bash-3.2$ uname -a
    Darwin macpieter.local 9.6.0 Darwin Kernel Version 9.6.0: Mon Nov 24 17:37:00 PST 2008; root:xnu-1228.9.59~1/RELEASE_I386 i386[/code:1:6bd4daf7b1]

    Bijdrager
    RoyHochstenbach

    Nu krijg ik dezelfde meldingen opnieuw. Is er geen debug functie voor scripts in een terminal?

    [code:1:418ef9d831]
    uname -a
    Darwin mac-pro-van-roy-hochstenbach-2.local 9.6.0 Darwin Kernel Version 9.6.0: Mon Nov 24 17:37:00 PST 2008; root:xnu-1228.9.59~1/RELEASE_I386 i386[/code:1:418ef9d831]

    Bijdrager
    Pieterr

    Ik snap het echt niet. Kun je de file eens ‘binair’ dumpen? En hier posten? Misschien staat er HTML rommel tussen…
    [code:1:64931980a5]bash-3.2$ od -x doit
    0000000 6f66 2072 6966 656c 6920 206e 6c60 2073
    0000020 2e2a 6e70 6067 640a 0a6f 2020 2020 6b6d
    0000040 6964 2072 6260 7361 6e65 6d61 2065 732d
    0000060 2e20 6e70 2067 6624 6c69 6065 200a 2020
    0000100 6d20 2076 6624 6c69 2065 6260 7361 6e65
    0000120 6d61 2065 732d 2e20 6e70 2067 6624 6c69
    0000140 6065 302f 3130 702e 676e 0a20 6f64 656e
    0000160 000a [/code:1:64931980a5]

    Bijdrager
    RoyHochstenbach

    Dan zie ik dit:
    [code:1:f0dee972f9]
    0000000 6f66 2072 6966 656c 6920 206e 6c60 2073
    0000020 2e2a 6e70 6067 0a20 6f64 0a20 a0c2 c220
    0000040 20a0 6b6d 6964 2072 6260 7361 6e65 6d61
    0000060 2065 732d 2e20 6e70 2067 6624 6c69 6065
    0000100 0a20 a0c2 c220 20a0 766d 2420 6966 656c
    0000120 6020 6162 6573 616e 656d 2d20 2073 702e
    0000140 676e 2420 6966 656c 2f60 3030 2e31 6e70
    0000160 2067 640a 6e6f 0065
    0000167
    [/code:1:f0dee972f9]

    Bijdrager
    Pieterr

    Ik zie er inderdaad rommel tussenstaan. Zaken als ‘a0’ en ‘c2’.
    Heb je het bestand als ascii opgeslagen?
    Probeer anders eens de tekst zelf letterlijk over te typen (in vi/Nano) ipv te kopieëren.

    Bijdrager
    RoyHochstenbach

    Het werkt! Heb alle regels handmatig overgetypt met Nano, en toen kon ie het gewoon uitvoeren.

    Hartelijk bedankt! :D

    Bijdrager
    Pieterr

    Oef!
    Dat “copy&paste” uit webpagina’s geeft blijkbaar toch problemen…
    Goed dat het is gelukt.

19 berichten aan het bekijken - 1 tot 19 (van in totaal 19)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.