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

Re: Bash-Skript in Ordnern und Unterordnern abarbeiten



Bonsoir,

Klaus Becker schrieb am 12. Dec um 21:34 Uhr:
> n'Abend,

> Dazu habe ich mir ein Skript geschrieben, das funktionniert, aber nicht in 
> Unterordnern.
> 
> Ich habe Serien aufgenommen wie z. B. Yakari, und ohne das Datum und den 
> Fernsehsender haben die Dateien alle den gleichen Namen. Daher numeriere ich 
> alle Dateien (und gebe ihnen die Endung "mpg") zunächst mit
> 
> declare -i i=1
> for file in $(find -name "*"); do
> mv $file $(echo $file | sed s/$/$i.mpg/g)
> (( i = i + 1 ))
> done

das muss schiefgehen, wenn auch nur ein einziger Datei- oder Ordnername ein
Leerzeichen enthält. Siehe help for

> Das funktionniert aber nicht in Unterordnern, und ich weiss nicht, wie ich das 
> hinkriegen soll. "find . -type d" gibt Ordner und Unterordner an, aber was 
> mache ich dann damit?
> 
> Ich vermute, ich muss dem Skript beibringen, nacheinander in alle Unterordner 
> zu gehen und dort die Befehle jeweils abzuarbeiten, das schaffe ich aber 
> nicht. 

ich würde so angehen:

#  i=1 ; find -name "*" | while read file ; do [...]

oder eher

... find -type f -name *.mpg ...


Gruß
Christian

-- 
Christian Knoke            * * *            http://cknoke.de
* * * * * * * * *  Ceterum censeo Microsoft esse dividendum.


Reply to: