Wildcards in BASH

  • Hi...


    Wie benutze ich Wildcards ?


    das:

    Code
    cp -auvx "/mnt/data/w/*mp3"  /mnt/data/media/music


    funktioniert nicht:


    Zitat

    cp: cannot stat `/mnt/data/w/*mp3': No such file or directory


    Steh' im Moment ein wenig auf dem Schlauch.....


    Viele Grüße


    gehlhajo

    VDR-1: streamdev-server | Hummingboard2| TT 3600 USB | Siemens S500 Gehäuse | Archlinux mit eigen Skripten
    VDR-2: streamdev-client | rpihddevice | Raspberry 2b | Siemens S450 Gehäuse| Remote: URC6410 | LG 42LV4500 |
    Archlinux mit eigenen Skripten


  • .. auch ohne Anführungszeichen leider das gleiche Ergebnis...

    VDR-1: streamdev-server | Hummingboard2| TT 3600 USB | Siemens S500 Gehäuse | Archlinux mit eigen Skripten
    VDR-2: streamdev-client | rpihddevice | Raspberry 2b | Siemens S450 Gehäuse| Remote: URC6410 | LG 42LV4500 |
    Archlinux mit eigenen Skripten


  • was sagt "echo /mnt/data/w/*mp3"?


    gibts solche files ueberhaupt?

    VDR: ASUS AT3ION-T, 2GB, Satix S2 Dual, 1TB 2.5", yavdr 0.4
    Server: Intel DH67CF, Pentium G620, 8GB, 2x1000GB 2.5" Raid1, WLAN, Ubuntu 12.04 @22W
    TV: Panasonic P50G30

  • Zitat

    Original von andreash
    was sagt "echo /mnt/data/w/*mp3"?


    /mnt/data/w/*mp3


    Zitat

    Original von andreash
    gibts solche files ueberhaupt?


    Ja, aber nur in den Unterverzeichnissen.
    Der Parameter -a weist cp ja an, in den Unterverzeichnissen zu suchen

    VDR-1: streamdev-server | Hummingboard2| TT 3600 USB | Siemens S500 Gehäuse | Archlinux mit eigen Skripten
    VDR-2: streamdev-client | rpihddevice | Raspberry 2b | Siemens S450 Gehäuse| Remote: URC6410 | LG 42LV4500 |
    Archlinux mit eigenen Skripten


  • in der Tat, er macht die Rekursion nicht....Wahrscheinlich werden mit der Wildcard mp3 die Unterverzeichnisse mit ausgeschlossen.

    VDR-1: streamdev-server | Hummingboard2| TT 3600 USB | Siemens S500 Gehäuse | Archlinux mit eigen Skripten
    VDR-2: streamdev-client | rpihddevice | Raspberry 2b | Siemens S450 Gehäuse| Remote: URC6410 | LG 42LV4500 |
    Archlinux mit eigenen Skripten


  • Nope.


    /mnt/data/w/*mp3 expandiert die shell zu allen Files, die in "/mnt/data/w" auf "mp3" enden. Das cp kommando sieht die Wildcard gar nicht.


    Was du willst, ist in /mnt/data/w nach files mit der Endung "mp3" zu suchen. Dafuer gibts das "find" kommando.

    VDR: ASUS AT3ION-T, 2GB, Satix S2 Dual, 1TB 2.5", yavdr 0.4
    Server: Intel DH67CF, Pentium G620, 8GB, 2x1000GB 2.5" Raid1, WLAN, Ubuntu 12.04 @22W
    TV: Panasonic P50G30


  • Aber hier waeren die Anfuehrungszeichen sauberer, sonst klappts nicht, falls mp3 files im aktuellen Verzeichnis liegen.

    Code
    find /mnt/data/w/  -name "*.mp3" -exec cp {} /mnt/data/media/music


    Allerdings legt er alle Dateien "flach" nach /mnt/data/media/music
    Um die Pfad-Struktur beizubehalten muss man ein bischen Scripten ...

  • Danke schön, werde ich heute abend mal ausprobieren


    Viele Grüße


    gehlhajo

    VDR-1: streamdev-server | Hummingboard2| TT 3600 USB | Siemens S500 Gehäuse | Archlinux mit eigen Skripten
    VDR-2: streamdev-client | rpihddevice | Raspberry 2b | Siemens S450 Gehäuse| Remote: URC6410 | LG 42LV4500 |
    Archlinux mit eigenen Skripten


  • Wenn man nur eine feste Rekursiontiefe hat, kann man auch folgendes machen:


    Code
    cp -auvx "/mnt/data/w/*/*mp3"  /mnt/data/media/music


    Ansonsten ist die find Methode zu bevorzugen.


  • hmmmm, klappt irgendwie nicht


    find: missing argument to `-exec'

    VDR-1: streamdev-server | Hummingboard2| TT 3600 USB | Siemens S500 Gehäuse | Archlinux mit eigen Skripten
    VDR-2: streamdev-client | rpihddevice | Raspberry 2b | Siemens S450 Gehäuse| Remote: URC6410 | LG 42LV4500 |
    Archlinux mit eigenen Skripten


  • da fehlt natürlich noch was:

    Code
    find /mnt/data/w/  -name "*.mp3" -exec cp {} /mnt/data/media/music \;


    sollte jetzt aber gehen.

    Powered by Point of View ION330 und Mystique SaTiX-S2 Dual
    Geguckt wird auf einem 52PFL5605H/12 per HDMI mit Atmolight Quattro
    Audio optisch per Yamaha RX-V459 auf einem Teufel Concept P
    Non-TV content über XBMC und boblight
    Remote Harmony 525 durch Atric-IR
    Remote und Streaming mit Motorola XOOM und AndroVDR sowie Daroon Player
    Streaming auf ZBOX ID-81 und Desktop per streamdev
    All based on selfbuild OpenenELEC master


    Nebenbei noch ein par andere VDRs

  • Danke.
    Ich habe zwar jetzt das meiste per Hand rüberkopiert, bin mir aber nicht sicher , ob ich auch alle erwischt habe :=)

    VDR-1: streamdev-server | Hummingboard2| TT 3600 USB | Siemens S500 Gehäuse | Archlinux mit eigen Skripten
    VDR-2: streamdev-client | rpihddevice | Raspberry 2b | Siemens S450 Gehäuse| Remote: URC6410 | LG 42LV4500 |
    Archlinux mit eigenen Skripten


Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!