Ein Skript ausführen, geleitet von stdin (Linux/Shell Scripting)

Angenommen ich habe ein Skript: my_script.sh

Anstatt das zu tun,

./my_script.sh

Ich möchte etwas machen wie:

cat my_script.sh | <some command here>

solche, die das Skript ausführt. Ist das möglich?

Den use-case ist, wenn das script, das ich ausführen möchten, ist die Ausgabe von wget oder s3cat, etc. Jetzt Speichere ich es in eine temporäre Datei, ändern Sie die ausführbare Datei, und führen Sie es. Gibt es eine Möglichkeit, es direkt tun?

Sie müssen sehr vorsichtig sein, dies zu tun. Wenn alles, was in Ihrem Skript liest von stdin (zum Beispiel alle Befehle, die den Benutzer auffordert, für die "ja/Nein"), wird es verbrauchen Linien zum Skript, und diese Zeilen werden nicht ausgeführt.

InformationsquelleAutor Switch | 2012-04-01

Schreibe einen Kommentar