tutorials.de Buch-Aktion 02/2012
ERLEDIGT
JA
ANTWORTEN
11
ZUGRIFFE
571
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Napofis
    Napofis Napofis ist offline require 'brain.php';
    Registriert seit
    Jun 2007
    Ort
    Bayern
    Beiträge
    517
    Hallo @ all,

    ich versuche gerade einen Befehl auszuführen der seine Infos au einer Datei bekommt.
    In der Datei sind Namen von Bildern aufgelistet. Ich hab versucht die Standardeingabe auf die Datei umzuleiten aber das will einfach nicht klappen.

    Hier ist mal mein Versuch: (Der Befehl kennt keinen rekursiven Aufruf, daher dieser Umweg)
    Code :
    1
    
    jpegoptim -fotm90 --strip-all <jpgs.txt

    Was mache ich falsch?


    Gruß Napofis
     

  2. #2
    Tim Bureck Tim Bureck ist offline Mitglied Brokat
    Registriert seit
    Apr 2009
    Ort
    Düsseldorf (NRW)
    Beiträge
    498
    Linux ist bei mir schon was länger her, aber versuchs mal mit:

    Code :
    1
    
    cat jpgs.txt | jpegoptim -fotm90 --strip-all
     

  3. #3
    Avatar von Napofis
    Napofis Napofis ist offline require 'brain.php';
    Registriert seit
    Jun 2007
    Ort
    Bayern
    Beiträge
    517
    Der Versuch es mit einer pipe ging auch nicht?

    Code :
    1
    
    find -name *.jpg | jpegoptim -fotm90 --strip-all
     

  4. #4
    Avatar von Napofis
    Napofis Napofis ist offline require 'brain.php';
    Registriert seit
    Jun 2007
    Ort
    Bayern
    Beiträge
    517
    Zitat Zitat von Tim Bureck Beitrag anzeigen
    Linux ist bei mir schon was länger her, aber versuchs mal mit:

    Code :
    1
    
    cat jpgs.txt | jpegoptim -fotm90 --strip-all
    Nein geht leider auch nicht.
     

  5. #5
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    7.983
    Hi.

    Der Befehl liest ja auch gar nicht von der Standardeingabe. Vielmehr erwartet jpegoptim Dateienamen auf der Kommandozeile.

    Code :
    1
    
    find -name *.jpg -print0 | xargs -r0 jpegoptim -fotm90 --strip-all
    Siehe "man xargs"

    Gruß
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  6. #6
    Avatar von Napofis
    Napofis Napofis ist offline require 'brain.php';
    Registriert seit
    Jun 2007
    Ort
    Bayern
    Beiträge
    517
    Ha genial es geht

    danke danke
     

  7. #7
    Avatar von Napofis
    Napofis Napofis ist offline require 'brain.php';
    Registriert seit
    Jun 2007
    Ort
    Bayern
    Beiträge
    517
    Hallo Ihr,

    ich bins noch mal mit einem ähnlichen Problem, deshalb schreibe ich hier einfach weiter.

    Ich habe zwei weitere Tools die leider nur immer eine Datei akzeptieren.

    Hier mal die Syntax:
    Code :
    1
    
    cmd [options] outputfile inputfile

    Wie kann ich nun diesem Programm die Dateien übergeben die ich mit find gefunden habe?
    Die Inputfile ist immer gleich der Outpufile, man muss sie aber immer so angeben.


    Vile Grüße Napofis
     

  8. #8
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    7.983
    Hi.

    Evtl. solltest du dir mal die Manpage von xargs anschauen...

    Gruß
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  9. #9
    Avatar von Napofis
    Napofis Napofis ist offline require 'brain.php';
    Registriert seit
    Jun 2007
    Ort
    Bayern
    Beiträge
    517
    Das hab ich, es hat mir aber nicht weiter geholfen.
    Nun habe ich alles in eine for Schleife gebracht.

    Gruß Napofis
     

  10. #10
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    7.983
    Zitat Zitat von Napofis Beitrag anzeigen
    Das hab ich, es hat mir aber nicht weiter geholfen.
    Und die --max-args Option ist dir nicht aufgefallen?
    --max-args=max-args
    -n max-args
    Use at most max-args arguments per command line. Fewer than max-args arguments will be used
    if the size (see the -s option) is exceeded, unless the -x option is given, in which case
    xargs will exit.
    Wozu könnte die wohl gut sein?

    Gruß
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  11. #11
    Avatar von Napofis
    Napofis Napofis ist offline require 'brain.php';
    Registriert seit
    Jun 2007
    Ort
    Bayern
    Beiträge
    517
    Zitat Zitat von deepthroat Beitrag anzeigen
    Und die --max-args Option ist dir nicht aufgefallen?

    Wozu könnte die wohl gut sein?

    Gruß
    Vielleicht um die Anzahl der Argument zu begrenzen, was mir in dem Fall nichts nützt.
    Wobei ich die Erklärung, nicht so wirklich verstehe.

    Gruß Napofis
     

  12. #12
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    7.983
    Zitat Zitat von Napofis Beitrag anzeigen
    Vielleicht um die Anzahl der Argument zu begrenzen, was mir in dem Fall nichts nützt.
    Warum sollte dir das nichts nützen? Wenn deine Programme nur 1 Argument verarbeiten können, und du begrenzt die max. Anzahl der zu übergebendenen Argumente auf 1, dann werden die Programme immer mit max. 1 Argument aufgerufen...

    \edit: Ich sehe gerade, du mußt den Programmen ja doch 2 Argument übergeben, wobei eines konstant bleibt. Dann müßte man die -I Option verwenden:
    Code :
    1
    
    xargs -0rI '$' cmd '$' datei1
    Gruß
    Geändert von deepthroat (11.10.10 um 09:39 Uhr)
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 12.02.10, 11:26
  2. Anfänger Problem- Java Eingabe durch Datei
    Von Fraenzchen im Forum Java
    Antworten: 9
    Letzter Beitrag: 12.03.08, 03:00
  3. eingabe in eine text datei speichern !
    Von DJIN im Forum C/C++
    Antworten: 6
    Letzter Beitrag: 30.07.07, 11:19
  4. [flex] Eingabe von Datei lesen
    Von Aiju im Forum C/C++
    Antworten: 4
    Letzter Beitrag: 26.01.06, 00:23
  5. Eingabe von einer Datei holen
    Von kevkev im Forum Linux & Unix
    Antworten: 7
    Letzter Beitrag: 21.12.05, 15:31