nehmen an, Sie einen Perl-Skript „foobar.pl“ haben, dass die folgende drucktführen Sie die Ausgabe eines Skripts als eigenständigen bash Befehl
date -R
nach stdout und Sie wollen was auch immer die Perl-Skript Ausgaben als laufen Standalone Bash-Befehl (Sorgen Sie sich nicht um Sicherheitsprobleme, da diese in einer vertrauenswürdigen Umgebung ausgeführt wird).
Wie erhalten Sie bash, dies als eigenständigen Befehl zu erkennen?
Ich habe versucht mit XARGS, aber das scheint Argumente nur zu einem vordefinierten Befehl übergeben zu wollen.
Ich möchte das Perl-Skript in der Lage sein, jeden beliebigen Befehl auszugeben.
$command = 'date -R'
system($command); ## in the perl script
die oben nicht funktioniert, weil ich es in einer bestehenden Cygwin-Umgebung ausgeführt werden soll ...
foobar.pl | xargs bash -i {}
die oben nicht funktioniert, weil bash einen neuen Prozess zu sein scheint laufen und damit die Initialisierung und Einstellungen von bash_profile werden nicht instanziiert.
bash <($ OUTPUT) ist was ich gesucht habe. Es macht einen RIESIGEN Unterschied mit der Rohrleitung, da Sie immer noch die Kontrolle darüber haben - für Eingaben. – yclian