• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Script Problem

A

Anonymous

Gast
Hallo,

ich versuche 50 Dateien mit dem Namen ....._1.pdf
in ....... .pdf umzuwandeln.

Code:
#!/bin/bash
files=$(ls *_1.pdf);
for i in $files;
do
name=$(echo $i | cut -f1 -d".");
mv $i "$name".pdf ;
done

Leider funktioniert das nicht. Wo liegt der Fehler?
 

Tooltime

Advanced Hacker
Schon dicht dran:
Code:
#!/bin/bash
files=$(ls *_1.pdf)
for i in $files
do
name=$(echo $i | cut -f1 -d"_")
echo $i "$name".pdf 
# mv $i "$name".pdf 
done
 

regexer

Advanced Hacker
noch dichter dran:
Code:
for file in *_1.pdf
do
  echo "$file" "${file/_1.pdf/.pdf}"
  # mv "$file" "${file/_1.pdf/.pdf}"
done
... mit der ls-Lösung gibt's Probleme, falls ein Leerzeichen oder Ähnliches im Dateinamen vorkommt.
 
OP
A

Anonymous

Gast
Hallo,

danke für die schnelle Lösung.
 
OP
A

Anonymous

Gast
Hallo,

es klappt noch nicht.
Wenn ich das Script
Code:
#!/bin/bash
files=$(ls *_1.pdf)
for i in $files
do
name=$(echo $i | cut -f1 -d"_")
echo $i "$name".pdf
# mv $i "$name".pdf
done

ausführe, erscheint in der Konsole
bg_1.pdf bg.pdf.

Im Ordner ist aber nur die Datei bg_1.pdf vorhanden.
Die umgewandelte Datei bg.pdf ist nicht vorhanden.
 
OP
A

Anonymous

Gast
Hallo,

ich glaube, ich brauche Urlaub.
- Danke -
 
Oben