echo.pl aa bb cc
1
2
3
4
/home/username/whatever/echo.pl a b c
# ODER
cd /home/username/whatever
./echo.pl a b c
2014-06-27T07:23:59 LinuxerGibt es auf dem entfernten Rechner vielleicht ein Skript/Kommando (im PATH) mit dem gleichen Namen, das aber keine Ausgaben generiert?
Ruf das Skript mal mit absolutem Namen auf; kommt dann immer noch keine Ausgabe?
Code: (dl )1
2
3
4/home/username/whatever/echo.pl a b c
# ODER
cd /home/username/whatever
./echo.pl a b c
2014-06-27T08:21:47 GwenDragonDer Zielrechner ist XP? Hat der denn überhaupt eine Verknüpfung von Dateiextension .pl zu Perl?
Ansonsten musst du das Programm mit C:\Pfad\auf\perl.exe davor aufrufen.
C:\Pfad\auf\perl.exe echo.pl a b c
1 2 3 4 5 6 7
#! /usr/bin/perl use strict; use warnings; print $ARGV[0]; print $ARGV[1]; print $ARGV[2];
perl echo.pl aa bb cc
echo.pl aa bb cc
2014-06-27T08:24:06 RaubtierAh, Windows!
Wie rufst du das Script denn auf?
a) mit
Code: (dl )perl echo.pl aa bb cc
(das sollte funktionieren)
oder
b) mit
Code: (dl )echo.pl aa bb cc
(ob das funktioniert, hängt davon ab, wie du in der Registry die Dateiendung .pl verknüpfst hast - du musst dann dort mit angeben, dass die Parameter übergeben werden sollen -> in HKEY_CLASSES_ROOT\Perl\shell\open\command sollte "C:\path-to\Perl\bin\perl.exe" "%1" %* stehen, damit Parameter übergeben werden)
2014-06-27T07:40:19 RaubtierWie sind denn die Einstellungen der Shell - wird ggf. die Ausgabe gleich wieder überschrieben? Du kannst probeweise mal ein print "\n" ans Ende setzen, sodass nach deiner Ausgabe ein Zeilenumbruch erfolgt.
2014-06-27T07:18:36 bob.georgeIch starte es also mitAls Ausgabe bekomme ich nichts.Code: (dl )echo.pl aa bb cc
QuoteC:\>echo.pl aa bb cc
pl aa bb cc
2014-06-27T10:08:35 RaubtierLies die Frage noch einmal. Das Script wird ausgeführt, aber es werden keine Parameter übergeben. Daher sehr wohl ein Fehler in der Registry.
2014-06-27T07:18:36 bob.georgeAls Ausgabe bekomme ich nichts.
2014-06-27T10:03:22 biancaDenn wenn das Perlscript ausgeführt wurde liegt 1. kein Fehler in der Registry vor und
2014-06-27T09:05:23 biancaDas Geheimnis: Windows interpretiert echo.pl als echo pl aa bb cc usw.
echo ist ein reserviertes Kommando in Windows! Benenne das Script um oder schreib ein perl davor.
2014-06-27T09:05:23 bianca2014-06-27T07:18:36 bob.georgeIch starte es also mitAls Ausgabe bekomme ich nichts.Code: (dl )echo.pl aa bb cc
Nichs? Das glaube ich nicht. Da muss wenigstens pl aa bb cc gekommen sein:
QuoteC:\>echo.pl aa bb cc
pl aa bb cc
Das Geheimnis: Windows interpretiert echo.pl als echo pl aa bb cc usw.
echo ist ein reserviertes Kommando in Windows! Benenne das Script um oder schreib ein perl davor.