[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bash-Skript in Ordnern und Unterordnern abarbeiten [gelöst]



Heiko Schlittermann <hs@schlittermann.de> (Do 15 Dez 2016 07:53:25 CET):
…
> > > find . -type f | while read file; do
> > >   echo $file | sed s/$/$i.mpg/g
> > >   (( i = i + 1 ))
> > > done
> 
> > Das hat's gebracht, danke !
> > find mit "while read file" kannte ich nicht, das ist eine einfache Lösung.
> 
> Aber auch die oben skizzierte Lösung wird versagen, wenn Zeilenumbrüche
> im File- oder Verzeichnisnamen sind, oder wenn der Filename hinten dran
> Leerzeichen hat. Das wird(!) passieren.
> 
>     #!/bin/bash
>     find "${@-.}" -type f -print0 | while read -d $'\0; do
>         echo "<<$REPLY>>"
>     done

Den sed brauchen wir doch gar nicht, oder?

      #!/bin/bash
      find "${@-.}" -type f -print0 | while read -d $'\0; do
          mv "$REPLY" "$REPLY.$((++i)).mpg"
      done

    Best regards from Dresden/Germany
    Viele Grüße aus Dresden
    Heiko Schlittermann
-- 
 SCHLITTERMANN.de ---------------------------- internet & unix support -
 Heiko Schlittermann, Dipl.-Ing. (TU) - {fon,fax}: +49.351.802998{1,3} -
 gnupg encrypted messages are welcome --------------- key ID: F69376CE -
 ! key id 7CBF764A and 972EAC9F are revoked since 2015-01 ------------ -

Attachment: signature.asc
Description: Digital signature


Reply to: