Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Linux Forum Linux-Web.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

AL89

Das Original.

  • »AL89« ist männlich
  • »AL89« ist der Autor dieses Themas

Beiträge: 150

Wohnort: Frankfurt am Main

Beruf: Schule/Abitur

  • Nachricht senden

1

08.02.2006, 21:01

Stapelverarbeitung

Hallo zusammen...

als ich früher noch SuSE auf meinem Rechner hatte, hab ich immer mit "Gwenview"
über ein Plugin viele Bilder auf einen Rutsch verkleinern können.

Gwenview hab ich jetzt auch auf Kubuntu geladen... Problem: die Plugins sind nicht dabei und ich bin langsam am verzweilfen...

Hab schon nahezu alles durchgegooglet...

1. Weiß jmd, wo ich das Plugin herbekomme, oder
2. Gibt es ein anderes Programm (ausser GIMP) mit dem ich viele Bilder verkleinern kann?

Es geht mir nur um verkleinern, mehr muss es nicht sein...
Auch eine Enttäuschung, wenn sie nur gründlich und endgültig ist, bedeutet einen Schritt vorwärts. [M. Planck]

strcat

Unix Gladiator

  • »strcat« ist männlich

Beiträge: 2 331

Wohnort: /Earth/Germany/Bavaria/Regensburg

  • Nachricht senden

2

08.02.2006, 21:42

RE: Stapelverarbeitung

Zitat

Original von AL89
[...]
2. Gibt es ein anderes Programm (ausser GIMP) mit dem ich viele Bilder verkleinern kann?

Es geht mir nur um verkleinern, mehr muss es nicht sein...


| $ find . -type f -name '*.jpg' | xargs convert -resize 480

convert ist bei ImageMagick enthalten. Installier eine brauchbare Shell, dann brauchst Du so eklige find/Pipe/xargs - Konstrukte nicht mehr.
Christian 'strcat' Schneider <http://www.strcat.de/>
/* When all else fails, read the instructions. */

3

08.02.2006, 23:55

Strcat hat vollkommen Recht ;)
-> http://forum.buchzik.de/read.php?5,82,82#msg-82

Michael
Life is like ice cream: enjoy it before it melts!
"If there is (a God), all evidence indicates that He hates me." - Matt Groening

AL89

Das Original.

  • »AL89« ist männlich
  • »AL89« ist der Autor dieses Themas

Beiträge: 150

Wohnort: Frankfurt am Main

Beruf: Schule/Abitur

  • Nachricht senden

4

12.02.2006, 19:56

ich versuche mich ja schon, nicht sooo blöd anzustellen, aber...

ich hab mich jetzt mehrmals damit auseinadergesetzt, blicke aber nicht durch?!

angenommen:



bilder liegen in "/home/alex/bilderordner"
und sollen 450x300 pixel groß werden.


was muss ich dazu eintippen?
Auch eine Enttäuschung, wenn sie nur gründlich und endgültig ist, bedeutet einen Schritt vorwärts. [M. Planck]

strcat

Unix Gladiator

  • »strcat« ist männlich

Beiträge: 2 331

Wohnort: /Earth/Germany/Bavaria/Regensburg

  • Nachricht senden

5

12.02.2006, 20:27

Zitat

Original von AL89
ich hab mich jetzt mehrmals damit auseinadergesetzt, blicke aber nicht durch?!


Deine bisherigen Versuche sehen wie genau aus?

Zitat

bilder liegen in "/home/alex/bilderordner"
und sollen 450x300 pixel groß werden.
was muss ich dazu eintippen?


Das was ich gepostet habe und convert(1) 450x300 uebergeben.
Christian 'strcat' Schneider <http://www.strcat.de/>
/* When all else fails, read the instructions. */

6

12.02.2006, 20:33

hi al89,

im link von michael und dem post von strcat wirds doch beschrieben ... einfach ausprobieren

> convert -scale 200x200 $file thumbs/$file

fuer deine gewuenschte aufloesung:

> convert -scale 450x300 DeinBild.jpg DeinBild450x300.jpg

... und jetzt alle am stueck in ein neues verzeichnis:

# mkdir MeineConvertiertenBilder

# for file in `ls *.jpg`
> do
> convert -scale 450x300 $file MeineConvertiertenBilder/$file
> done

... in der variblen $file wird alles verarbeitet was der befehl 'ls *.jpg' ausgibt.

schreib den vierzeiler in einen file und fuehr ihn aus =D

gruß epikur

PS: ups ... war zu langsam =D
wie soll ich wissen, was ich denke?
... bevor ich hoere, was ich sage
... bevor ich lese, was ich schreibe

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »epikur« (12.02.2006, 20:35)


strcat

Unix Gladiator

  • »strcat« ist männlich

Beiträge: 2 331

Wohnort: /Earth/Germany/Bavaria/Regensburg

  • Nachricht senden

7

12.02.2006, 21:04

Zitat

Original von epikur
[..]
schreib den vierzeiler in einen file und fuehr ihn aus

".. und dann stell fest das es nicht funktioniert, wenn Dateinamen Leerzeichen enthalten." hast Du vergessen.
Hilfe zur Selbsthilfe ist sinnvoller als jemandem die Loesungen vorzukauen.
Christian 'strcat' Schneider <http://www.strcat.de/>
/* When all else fails, read the instructions. */

linuxerr

Prof. Dr. Schlaumeier

  • »linuxerr« ist männlich

Beiträge: 8 557

Wohnort: Mecklenburg, zur Entwicklungshilfe in Chemnitz/Sachsen ;-)

  • Nachricht senden

8

22.02.2007, 02:04

Zitat

Original von epikur
# for file in `ls *.jpg`
> do
> convert -scale 450x300 $file MeineConvertiertenBilder/$file
> done


Zitat

Original von strcat
".. und dann stell fest das es nicht funktioniert, wenn Dateinamen Leerzeichen enthalten." hast Du vergessen.


also den thread musste ich jetzt ausbuddeln, da wir wieder bei meinem problem mit der for-schleife aus for+variablenexpansion sind.
jaja, die leerzeichen, knifflig, und ich hatte ja in dem thread auch auf hilfe und beistand gehofft. wie gesagt, arrays gut und schön, aber in der /bin/sh sieht es da schlecht aus. das problem ist ja im prinzip auch (mal ausführlicher :))mit

Quellcode

1
2
3
4
5
#!/bin/bash
ls -1 /pfad_da_hin/* | while read IMG
do
 convert -blahblah ${IMG} blahblah
done

einigermaßen in den griff zu bekommen, aber die while-schleife läuft dann in einer subshell und damit ist die änderung "globaler" variablen unwirksam.
wie zb

Quellcode

1
2
3
4
5
6
7
8
9
!!/bin/bash
ANZAHL=0
ls -1 zz/* | while read IMG
do
 echo ">${IMG}<"
 ANZAHL=1
 echo "ANZAHL=${ANZAHL}"
done
echo "EANZAHL=${ANZAHL}"

man sieht sehr schön, dass ANZAHL zwar in der while-schleife den wert 1 annimmt, ausserhalb der schleife aber weiterhin 0 bleibt.
da hab ich noch keine lösung.
Die Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt.
Jeder der einen findet darf ihn behalten und in eigenen Werken weiterverwenden.

strcat

Unix Gladiator

  • »strcat« ist männlich

Beiträge: 2 331

Wohnort: /Earth/Germany/Bavaria/Regensburg

  • Nachricht senden

9

22.02.2007, 02:23

Quellcode

1
2
3
4
5
6
7
8
9
#!/bin/bash
ANZAHL=0
while read IMG
do
 echo ">${IMG}<"
 ANZAHL=1
 echo "ANZAHL=${ANZAHL}"
done < <( /bin/ls -1 * )
echo "EANZAHL=${ANZAHL}"


Oder versteh ich grad was flasch?
Christian 'strcat' Schneider <http://www.strcat.de/>
/* When all else fails, read the instructions. */

linuxerr

Prof. Dr. Schlaumeier

  • »linuxerr« ist männlich

Beiträge: 8 557

Wohnort: Mecklenburg, zur Entwicklungshilfe in Chemnitz/Sachsen ;-)

  • Nachricht senden

10

22.02.2007, 02:47

ja, hatte ich auch schon versucht, aber funktioniert nicht

Quellcode

1
2
./bilder.sh: line 8: syntax error near unexpected token `<'
./bilder.sh: line 8: `done < ( /bin/ls -1 * )'


grübel,grübel :?
Die Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt.
Jeder der einen findet darf ihn behalten und in eigenen Werken weiterverwenden.

strcat

Unix Gladiator

  • »strcat« ist männlich

Beiträge: 2 331

Wohnort: /Earth/Germany/Bavaria/Regensburg

  • Nachricht senden

11

22.02.2007, 02:53

Zitat

Original von linuxerr
ja, hatte ich auch schon versucht, aber funktioniert nicht

Quellcode

1
2
./bilder.sh: line 8: syntax error near unexpected token `<'
./bilder.sh: line 8: `done < ( /bin/ls -1 * )'


Manchmal sollte man per copy&paste arbeiten. Zwei "< <" und nicht ein "<".
Christian 'strcat' Schneider <http://www.strcat.de/>
/* When all else fails, read the instructions. */

linuxerr

Prof. Dr. Schlaumeier

  • »linuxerr« ist männlich

Beiträge: 8 557

Wohnort: Mecklenburg, zur Entwicklungshilfe in Chemnitz/Sachsen ;-)

  • Nachricht senden

12

22.02.2007, 03:03

jo, schon klar, aber ich hab da schon etliche kombinationen und möglichkeiten versucht und bin nicht zum erfolg gekommen.

Quellcode

1
2
 line 8: syntax error near unexpected token `<'
 line 8: `done < <( /bin/ls -1 zz/* )'
Die Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt.
Jeder der einen findet darf ihn behalten und in eigenen Werken weiterverwenden.

strcat

Unix Gladiator

  • »strcat« ist männlich

Beiträge: 2 331

Wohnort: /Earth/Germany/Bavaria/Regensburg

  • Nachricht senden

13

22.02.2007, 03:09

[x] Show the source.
Christian 'strcat' Schneider <http://www.strcat.de/>
/* When all else fails, read the instructions. */

linuxerr

Prof. Dr. Schlaumeier

  • »linuxerr« ist männlich

Beiträge: 8 557

Wohnort: Mecklenburg, zur Entwicklungshilfe in Chemnitz/Sachsen ;-)

  • Nachricht senden

14

22.02.2007, 03:33

nicht schlecht, ich bin ein trottel. soll ich dir mal sagen, was das problem gewesen ist, oh man, ich hab die scripte mit
sh -x script
aufgerufen. in der bash ok und wie in der sh?
deshalb hatte ich ja auch die pipe gewählt, auch wenn in der kopfzeile #!/bin/bash steht.
sorry, mein fehler.
Die Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt.
Jeder der einen findet darf ihn behalten und in eigenen Werken weiterverwenden.

Thema bewerten