PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Die Ausgabe von einem Perleinzeiler geht nach ...



baumgartner
09-09-2005, 09:01
Hi,

hab vor ein paar tagen mal nen perl einzeiler geschrieben um mir eine lister alter dateien anzuzeigen, der hat super funktioniert. heute habe ich den selben wieder verwendet und ich bekomme keine ausgabe.


perl -e 'for(1..10){`find /pfad/zu/datei -ctime $_`;}' > datei

leider erhalte ich dabei keine ausgabe :eek: im gegensatz zum letzen mal

auch folgendes gibt mir nichts auf stdout aus

perl -e '`echo "hello world"`'

any ideas ?? :confused: :confused:

mfg martin

michael.sprick
09-09-2005, 12:20
hi,

also eigentlich dürfte da auch keine Ausgabe kommen, denn `alles was hier steht` ist R-Value... will heißen, was auch immer da an Ausgaben erzeugt wird wandert als L-Value wieder in das Perlskript... sozusagen ;)

Wenn die Ausgaben an STDOUT ausgeben willst, müsstest Du jeweils ein print vor den `systembefehl` setzen.

Anders verhält es sich, wenn der find Befehl Fehler erzeugt (beispielsweise bei fehlenden Berechtigungen) - die wiederum werden dann an STDERR geschickt, was vermutlich die konsole ist, in der Du den einzeiler ausführst...



perl -e 'for(1..10){print `find /home/msprick -ctime $_`;}' > datei


sollte also gehen...