„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie führe ich mehrzeilige Befehle in einer einzigen Befehlszeile aus?

Wie führe ich mehrzeilige Befehle in einer einzigen Befehlszeile aus?

Veröffentlicht am 07.11.2024
Durchsuche:719

How to Run Multi-Line Commands in a Single Command Line?

So führen Sie mehrzeilige Anweisungen in einer einzeiligen Befehlszeile aus

Beim Ausführen einer einzeiligen Schleife mit der Python-Option -c , führt das Importieren eines Moduls vor der Schleife zu einem Syntaxfehler. Dies liegt daran, dass der Python-Interpreter den Codeblock als eine einzelne Anweisung behandelt.

Um dieses Problem zu lösen, können mehrere Methoden eingesetzt werden:

Pipes verwenden

Um den Syntaxfehler zu beheben, verwenden Sie den Befehl echo, um den Codeblock als Reihe von Eingabezeilen an Python umzuleiten:

echo -e "import sys\nfor r in range(10): print 'rob'" | python

Verwenden von exec()

Ein anderer Ansatz besteht darin, die Funktion exec() zu verwenden, um den Codeblock als Python-Skript auszuführen:

python -c "exec(\"import sys\nfor r in range(10): print 'rob'\")"

Erweitern auf mehrere Zeilen

Bei Verwendung Pipes oder exec() nicht möglich ist, kann der Codeblock auf mehrere durch Semikolons getrennte Zeilen erweitert werden:

(echo "import sys" ; echo "for r in range(10): print 'rob'" ; echo "exec(\"import sys\nfor r in range(10): print 'rob'")") | python

Durch die Verwendung dieser Techniken können Sie mehrzeilige Anweisungen in einer einzigen Befehlszeile ausführen und dabei die gewünschte Struktur für Ihr Makefile beibehalten.

Freigabeerklärung Dieser Artikel wird unter folgender Adresse abgedruckt: 1729217236 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3